安卓Webview性能问题,我错过了什么?

5
希望有人能帮助我找到正确的方向。我的移动站点在本机安卓浏览器中查看时,加载时间不到一秒,最多两秒。但是当该网站放在Webview中时,每次至少需要5秒钟才能加载完毕,无论如何都是这样。在浏览stackoverflow查找解决方案后,我已经添加了以下内容:
    webView.getSettings().setRenderPriority(RenderPriority.HIGH);
    webView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);

并且

    //Disable Caching 
    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); 

    }

不过,网站加载速度很慢。我知道原生应用更快,但是为了灵活性,我喜欢使用webview。有什么建议吗?我还有其他问题吗?

1个回答

6

好的...在花费一些时间后,我找到了罪魁祸首。加载Javascript文件,无论是本地还是远程文件,压缩等,都会给webview的加载时间添加很大的开销。此外,不管脚本放置在标签内还是之前,结果几乎相同,至少在我的情况下是这样。

我找到的一个解决方案是使用head.js以非阻塞的方式加载脚本。这确实有所帮助。总之,我只是为其他遇到类似情况的人发布这个信息。


@peter 文档可以在这里找到:http://headjs.com/,但是我现在正在使用另一种方法来合并和压缩所有的js/css文件。 - Eedresha

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接