2016-12-30 4 views
1

Мое приложение отображает содержимое веб-страницы в веб-браузере Android. Веб-страница разработана сторонней командой, и поэтому я не могу контролировать дизайн или исходный код. На веб-странице показана некоторая анимация, а затем обновляется с фактическим содержимым (обычный дизайн пользовательского интерфейса). Однако мой веб-просмотр никогда не выходит за рамки начальной анимации.Android WebView не обновляется после изменения содержимого веб-страницы

Обратите внимание: я подтвердил, что веб-страница правильно загружается в браузере на том же устройстве. Таким образом, на веб-странице нет никаких проблем. Также я обновил webview про грамматически после задержки 5 секунд (в браузере рабочего стола веб-страница занимает примерно 1-2 секунды для обновления фактического содержимого), который должен был учитывать задержку обновления.

Есть ли известная проблема с современными веб-страницами (HTML 5 + CSS3 + JS), которая может привести к тому, что они не будут правильно отображаться на веб-просмотре Android? К чему я могу вернуться? Я пропустил установку каких-либо свойств в Webview?

Ниже приведен фрагмент моего кода -

myWebView = (WebView)v.findViewById(R.id.catalog_view); 
WebSettings settings = myWebView.getSettings(); 
settings.setLoadWithOverviewMode(true); 
settings.setUseWideViewPort(true); 
settings.setJavaScriptEnabled(true); 
settings.setCacheMode(WebSettings.LOAD_NO_CACHE); 
myWebView.loadUrl("https://www.homehardware.com.au/catalogue/?category=garden-outdoor"); 

Примечание: URL упоминается в Teh выполнения кода, фактический URL я пытаюсь загрузить. Я также пробовал пару других вещей, например, возиться с режимом кэширования веб-браузера, строку UA и т. Д., Но ничего не работает.

+1

Добавьте эту строку «settings.setDomStorageEnabled (true);» и проверить. – Praveen

+0

Это работало любимое очарование. Я пробовал почти все методы и думаю, что мне пришлось попробовать еще несколько :) – Dibzmania

+0

Вы играете в сюжетную линию HTML5? это в основном видео, встроенные в html-контент. –

ответ

0

Для того, чтобы закрыть вопрос для будущих справок для SO-исследователей, ответ из приведенного комментария praveen.

Хитрость заключается в том, чтобы использовать settings.setDomStorageEnabled (истинный)

Примечание: хотя, как на мой взгляд, с HTML5 становится одним из стандартов де-факто, на которых основаны современные веб-страницы, этот параметр должен быть по умолчанию (так что веб-просмотры по умолчанию ведут себя так, как делают современные браузеры)