我正在尝试所有方法来徒劳地改善android webview中链接的加载时间。我使用的链接通过使用一些js函数从外部服务器获取图像和文本,这些图像和文本可能随时改变。这个场景我使用的代码如下所示。我对HTML 5缓存或服务器缓存技术不感兴趣,因为浏览器加载速度相同的链接在android webview中无法做同样的事情。我可以加载的js脚本不多资源以提高性能因此大多数脚本只从外部服务器和亚马逊服务器上的图像中提取数据。
WebSettings settings = getSettings();
settings.setJavaScriptEnabled(true);
settings.setPluginState(PluginState.ON);
settings.setRenderPriority(WebSettings.RenderPriority.HIGH);
settings.setDomStorageEnabled(false);
settings.setLoadsImagesAutomatically(true);
settings.setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
settings.setJavaScriptEnabled(true);
settings.setAppCacheEnabled(false);
settings.setGeolocationEnabled(false);
1.我认为启用DomStaorage和AppCache为true会对加载时间产生影响所以我已将其关闭。 - >这是真的
2.在OnDestroy中我在webview上调用clearcache来清除应用程序缓存 - 我这样做因此我担心如果我无法清除,我的应用程序大小可能会随着webview db的增长而增长.->这是必须的,或者android可以优雅地处理它。
3.我听到的一些建议是将setCacheMode设置为LOAD_NO_CACHE并在onDestroy中注释清除webview缓存。 - >调用webview.clearcache()是否有任何影响,因此我已经设置了不从缓存加载。
4.该链接不提供以前刷新时间的信息,在这种情况下,任何人都可以推荐什么缓存模式。
5.是否有任何音乐会测试方法可以找出考虑到网络连接和服务器滞后的设备的加载时间。一旦快速加载,同一页面可能会在其他时间加载缓慢。
答案 0 :(得分:0)
尝试使用“fast click”。
移动浏览器将在您点按按钮以触发点击事件时等待大约300毫秒。原因是浏览器正在等待您是否实际执行双击。
下载脚本,添加
<script type='application/javascript' src='fastclick.js'></script>
标题中的和脚本中的此代码。
window.addEventListener('load', function() {
FastClick.attach(document.body);
}, false);
更多信息:https://developers.google.com/mobile/articles/fast_buttons