为啥 android webview 比原生 android 浏览器慢很多?

Posted

技术标签:

【中文标题】为啥 android webview 比原生 android 浏览器慢很多?【英文标题】:Why android webview is much slower than the native android browser?为什么 android webview 比原生 android 浏览器慢很多? 【发布时间】:2011-10-22 22:16:07 【问题描述】:

在我的应用程序中,我有一些要加载的外部 url,为此我使用了自定义 web 视图。但是这个 webview 的性能非常非常慢。如果我在本机 android 浏览器中打开相同的 url,它工作正常。但是在webview中,加载页面只需要很多时间。 无论如何,在加载网页时间方面可以提高 webview 的性能吗?帮助总是受到赞赏。

【问题讨论】:

你是在模拟器还是设备上测试? 在两者上...与原生 android 浏览器相比,两者的 Web 视图都较慢。 现在说有点晚了,但值得一看:github.com/delight-im/Android-AdvancedWebView 【参考方案1】:

Usama,WebViews 会比浏览器慢一点,因为这里每个活动都必须回调到 Android 应用层。

话虽如此,看看您是否可以禁用 javascript(如果它没有在您的应用中使用),更重要的是检查已设置的 webview 中的缓存行为。 WebSettings 有一些与缓存相关的方法,例如 - setAppCacheEnabled、setAppCacheMaxSize、setCacheMode 等。

setDatabaseEnabled、javascrpt、loadImagesAutomatically 是可能影响加载时间的其他属性。

【讨论】:

以上是关于为啥 android webview 比原生 android 浏览器慢很多?的主要内容,如果未能解决你的问题,请参考以下文章

Electron:为啥 BrowserView 的性能比 Webview 好?

为啥 ReactNative 的性能比 WebView 好?如果他们使用相同的 Javascript Engine V8?

android webview增强版,对原生webview的一些解决方案

android webview增强版,对原生webview的一些解决方案

腾讯x5Webview取代原生android Webview

Android 使用腾讯X5内核WebView和原生做交互