2012-06-25 20 views
2

我正在构建一个加载存储在我的android设备上的HTML文件的应用程序。这些文件通常非常大(例如6MB)。如果我加载这些HTML文件,显示它们需要相当长的时间(20到25秒)。任何人都可以给我一些关于如何改善这种加载时间的建议吗? 代码我试过到目前为止:如何提高Android WebView性能?

final WebView webView = (WebView) findViewById(R.id.webView1); 
webView.loadUrl("file:///android_asset/content.html"); 
webView.getSettings().setCacheMode(<all cache modes>) 

我想这在Android 2.3和4.0,Android 4.0的执行实际上是差那么2.3。

有关如何提高性能的任何提示?

+0

您是否正在加载图片?改善你的HTML文件加载速度。 – slybloty

+0

你可以发布content.html吗?如果它是从网络调用链接肯定会减慢速度。你也可能想看看利用loadData或loadDataWithBaseURL。 http://developer.android.com/reference/android/webkit/WebView.html#loadDataWithBaseURL%28java.lang.String,%20java.lang.String,%20java.lang.String,%20java.lang.String,% 20java.lang.String%29 – MikeIsrael

+0

@slybloty是的,HTML中也有图像。任何提示如何加快/改善装载?因为受版权保护的内容,更改HTMl应该是最后的措施,但如果没有其他方法,那么我会尝试......任何提示如何实现此目的? – bvanvelsen

回答

0

好吧,试试loadData方法,它可能会快一点。

String summary; 

...//convert your file to a string and store in summary variable 

webview.loadData(summary, "text/html", null); 
1

真的是一个广泛的讨论。您可能需要更具体。所以这里有云....

  1. 一般来说,加快你的网页 - http://developer.yahoo.com/performance/rules.html

  2. 如果同时装载的装载多个文件异步--http://developer.android。 COM /参考/安卓/ OS/AsyncTask.html

  3. 最小化的照片,如果在所有可能的或加载它们最后

  4. 公共无效loadDataWithBaseURL(字符串的baseUrl,字符串数据,字符串mime类型,字符串编码,圣ring historyUrl)并将其缓存以备后用,以加快第二次或第三次加载的速度