Dib*_*nia 5 android android-webview
我的应用程序在 Android webview 中显示网页的内容。该网页是由第三方团队设计的,因此我无法控制设计或源代码。网页首先显示某种动画,然后刷新实际内容(正常的 UI 设计)。然而我的网络视图永远不会超出最初的动画。
请注意,我已验证该网页是否可以在同一设备上的浏览器上正确加载。所以网页肯定是没有问题的。另外,我在延迟 5 秒后以编程方式刷新了 webview(在桌面浏览器上,网页大约需要 1-2 秒来刷新实际内容),这应该解释了延迟刷新。
现代网页(HTML 5 + CSS3 + JS)是否存在任何已知问题,可能导致它们无法在 Android webview 上正确呈现?我可以回退到什么?我是否缺少在 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");
Run Code Online (Sandbox Code Playgroud)
注意:代码中提到的 URL 是我尝试加载的实际 URL。我还尝试了其他一些方法,比如摆弄 webview 缓存模式、UA 字符串等,但没有任何效果。
小智 5
应该有以下两个设置,以避免 webview 缓存更新页面而不刷新
settings.setCacheMode(WebSettings.LOAD_NO_CACHE);
settings.setDomStorageEnabled(true);
Run Code Online (Sandbox Code Playgroud)
只是为了结束这个问题以供 SO 探索者将来参考,答案来自 praveen 的赞同评论。
诀窍是使用settings.setDomStorageEnabled(true)
注意:虽然根据我的观点,随着 HTML5 成为现代网页所基于的事实上的标准之一,这个设置应该默认在 Android webviews 上启用(这样 webviews 默认的行为方式就像现代浏览器一样)
| 归档时间: |
|
| 查看次数: |
7911 次 |
| 最近记录: |