2016-03-02 4 views
2

Проблема возникает только в некоторых устройствах. В моем приложении около 1,9 миллиона пользователей, я получаю эту проблему в качестве обратной связи от некоторых пользователей. Они также отправили скриншоты.Android WebView показывает пустую страницу

Подробное описание проблемы: WebView не может отображать мой статический HTML-контент на некоторых устройствах, показывает только пустую страницу. Но 99% устройств работают нормально.

Согласно пользовательским обратным связям, эта проблема возникает на многих различных брендах, как Samsung, Sony, LG, ZTE и т.д. Кроме того, они имеют различные версии ОС Android от 4.0.3 до 5.1.1

испробовали все Genymotion эмуляторов и многие реальные устройства, все отлично работало для меня. Никогда не видел эту ошибку лично. Но некоторые пользователи продолжают сообщать об этой проблеме в течение 1,5 лет.

Также мой параметр layout_height моего WebView - wrap_content, но он ведет себя так, будто у него есть невидимый контент (пара строк). Обычно у него должно быть много строк.

Screen Shot

Мои WebView настройки:

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); 

Мои вопросы:

  1. Что может вызвать эта проблема?
  2. Как я могу это исправить?
  3. Может ли это быть связано с версией WebView, установленной на устройстве?

Редактировать: Я уже проверял все связанные вопросы & ответы на stackoverflow.

+0

Проверьте это http://stackoverflow.com/questions/2568063/android-webview-shows-a-blank-page – AndroidRuntimeException

+0

@ AgustinSivoplás Извините, но я проверил этот вопрос 1.5 Полтора года назад. Я пробовал все в Интернете. Решение пока не найдено. –

ответ

1

Что бы я начал, это исправить HTML, чтобы в нем не было ошибок. Я не знаю, какой контент вы поместили в него, но заголовок уже имеет в нем несколько ошибок:

  • Существует нет doctype;
  • Вы должны написать content='text/html;charset='UTF-8' вместо content='text/html' charset='UTF-8';
  • Элемент названия отсутствует.

Я склонен думать, что проблема связана с содержанием, которое вы показываете внутри, поскольку внешность остается прежней, поэтому убедитесь, что ошибок нет.

Хотя это может быть связано с версией WebView, но поскольку вы упоминаете, что проблема возникает в версии 4.0, я думаю, что она должна быть не просто версией WebView, потому что на этой версии Android она не является обновленный из Google Play, как в новейших версиях.

+0

Спасибо за ответ, я рассмотрю ваши предложения и обновить свой код и дождаться отзывов пользователей. –

+0

У нас схожая проблема ... что-то помогло? – Zbyszek

0

Версия приложения браузера Google Chrome должна совпадать с версией WebView. У меня была схожая проблема, и обновление Google Chrome помогло.

Смежные вопросы