在我的应用程序中,我正在加载webview中的外部URL列表,并允许用户翻阅它们.Web视图被加载到视图翻录器上.我发现webview加载网址的性能非常糟糕.我已经尝试了从使用框架布局到限制要加载的webview数量的所有内容.表现仍不尽如人意.
如何优化webview的性能?这应该是一种常见的用法.我错过了一些明显的东西.
我的Webview设置是 -
webView.setInitialScale(WEBVIEW_SCALE);
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setBuiltInZoomControls(false);
webView.setWebViewClient(new MyWebViewClient());
webView.setOnTouchListener( new OnTouchListener());
Run Code Online (Sandbox Code Playgroud)
这已经在这里讨论过:增强 webView 性能(应该与本机 Web 浏览器具有相同的性能)
我遇到了类似的问题,经过一番大量调试后发现本机浏览器和 WebView 浏览器似乎使用不同的缓存。
此代码可用于禁用 WebView 缓存,并使 WebView 对我来说更快(尽管以不缓存为代价)。请注意,它使用私有 API,因此使用它时您将面临代码在未来版本中损坏的风险:
try
{
Method m = CacheManager.class.getDeclaredMethod("setCacheDisabled", boolean.class);
m.setAccessible(true);
m.invoke(null, true);
}
catch (Throwable e)
{
Log.i("myapp","Reflection failed", e);
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
30651 次 |
最近记录: |