The problem occurs only some devices. My application has about 1.9 million users, I get this problem as feedback from some users. They have sent screen shots too.
Detailed Explanation of problem: The WebView cannot show my static HTML content on some devices, shows only blank page. But 99% of devices works fine.
According to user feedbacks, this problem occurs on many different brands like Samsung, Sony, LG, ZTE etc. Also they have different versions of Android OS from 4.0.3 to 5.1.1
Tried all Genymotion Emulators and many real devices, all worked perfectly for me. Never seen this bug personally. But some users keep reporting this issue for 1.5 years.
Also my WebView's layout_height parameter is wrap_content, but it behaves like it has some invisible content(a couple of lines). Normally, it should have lots of lines.
My webview settings:
webView = (WebView) v.findViewById(R.id.webView);
webView.getSettings().setJavaScriptEnabled(true);
webView.setWebViewClient(wvClient);
webView.getSettings().setTextSize(WebSettings.TextSize.NORMAL);
String start = "<html><head><meta name=\"viewport\" content=\"user-scalable=no\"/><meta http-equiv='Content-Type' content='text/html' charset='UTF-8' /><style>a {color:#9b252e;}\nimg.size-full{width:100%; height:auto;} iframe{width:100%; height:auto;} img{display: inline; height: auto; max-width: 100%;}</style></head><body>";
String end = "</body></html>";
webView.loadDataWithBaseURL(null, start + myHTMLContent + end, null, "text/html; charset=UTF-8", null);
My Questions are:
- What can cause that problem?
- How can I fix this?
- Can it be related to WebView version of currently installed on device?
Edit: I have already checked every related questions & answers on stackoverflow.