android webView 内核对比

 

现在的移动开发,一个明显的趋势是HTML占据了越来越重要的位置,H5不再是简单的一个浏览网页的行为,在非常多的APP中,它承担了许多原本许要原生开发的功能;Android的H5支持则是个比较头痛的事情

笔者在进行IOS开发时,WebView从来都不是问题,在IOS上不仅WebView统一,而且性能极佳,也很少需要考虑兼容性问题;

但这个问题在Android上则表现的非常不一样,由于机型众多,WebView的内核众多,不同手机的WebView的兼容性,性能相差也比较大,如果你的APP在Android上对H5有较高需求,你就需要一个好的解决方案

笔者现在所在的公司所负责开发的APP,就是一款企业级APP,由于需要对接企业开发的各式各样的H5的业务系统,因此在H5方面要求较高;也因此笔者对这一方面了解稍等有一点

Android WebView的选择有三种方案,分别是

  1. 使用Android系统自带的WebView
  2. 使用X5内核的WebView
  3. 使用基于chrome webkit的crosswalk WebView

如上述三种方案,第1个是最原始的解决方案,第2,3个则分别是腾讯,corsswalk的解决方案

几种方案的对照如下表:

方案方案说明实际效果优缺点html5test分数
系统自带WebViewAndroid默认最差优:没有额外的JAR及负担,原生API 缺: 兼容性,性能在不同手机上显示差别很大最差
X5 WebView腾讯产品,微信,QQ浏览器就是使用X5内核一般优:提供了一个兼容性的解决方案,且微信,QQ浏览器都在用,可信度高 缺: 解决的能力一般,而且某些方面反而加大了开发工作量;而且不支持cordova一般
crosswalk国外为Android提供的一个融合chrome webkit的解决方案最佳优:没有兼容性,性能问题,且支持corodva 缺:18M的包,而且区分不同的arm,x86等CPU较佳

笔者有一个较老的华为荣耀3C手机,购置于3年前,分别使用系统自带的WebView,X5 WebView,Crosswalk三种模式访问html5test网站,得出的评分结果分别是:

系统自带的WebView
自带WebView

X5内核WebView
X5内核

Crosswalk WebView
crosswalk

如上所述,crosswalk的效果是显而易见;笔者所有公司的APP项目也是使用crosswalk做为Android WebView

  1. 使用Chrome Webkit内核,兼容性不存在任何问题
  2. 性能佳
  3. 支持cordova
  4. 支持前端人员可以在PC Chrome上联调

不足:

  1. APP包增加了至少18M
  2. 不同的CPU系统的包完全不同,笔者APP只支持arm,如果你还要支持X86 CPU,你还得加18M的大小,或者分2个APP

而X5做为腾讯的一款产品,主要目标也是解决兼容性问题,从分数上看,它在H5的支持度上并没有太多的改善;但兼容性方面应该有比较好的改善,同时有微信和QQ浏览器做支撑,也是一个比较好的选择

因此,笔者最终建议如下:

  1. 你的APP对WebView需求不高,以纯原生为主,那就不用考虑WebView的兼容性及性能问题,使用系统自带的WebView就可以了
  2. 如果你的APP有大量使用到WebView,加载一些H5网页,但在cordova等其它方面没有要求,使用X5是一个比较好的选择,毕竟腾讯的实力摆在那,有问题你可以说,微信也是这样的(这个话非常有杀伤力)
  3. 类似笔者公司这样的APP,对H5有非常高的要求,大量的业务系统是由H5完成,且需要cordova与原生进行大量的交互 ,那这种情况下,crosswalk是我们唯一的选择,虽然加大了18M,但带来的好处是显而易见的

笔者公开了博文所涉及到的测试APP,你可以下载源码或APK,一方面了解这三种WebView应该如何使用,另一方面可以在不同的手机上进一步验证它们的兼容性及性能问题

访问源码

下载APK

源码是基于Android Studio运行,笔者认为你应该会用这个开发工具了

实际上,Android 4.4后,Android WebView就已经是基于WebKit内核了,理论上随着版本的不断发展,原生WebView性能及兼容性会越来越好;某个时间后,原生WebView就是最佳的选择了

但现在你还是要考虑这个问题

 

  • 4
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Android 一键升级 WebView 内核是指在 Android 系统中,通过一键操作来完成 WebView 内核的升级过程。在 Android 平台上,WebView是一个内置的浏览器组件,用于显示网页内容。WebView 的核心引擎是基于谷歌的开源项目 Chromium 开发的,因此随着时间的推移,谷歌会不断更新和改进 WebView内核。 为了安全性和性能的考虑,升级 WebView 内核变得非常重要。随着新的安全漏洞和性能改进的不断出现,保持 WebView 内核始终为最新版本可以增强用户的浏览体验,并提供更好的安全性。 为了简化用户的操作,开发者们创建了一键升级 WebView 内核的解决方案。这些解决方案通常是一个应用程序或库,可以检测设备上的 WebView 内核版本,然后下载并安装最新版本的内核。 一键升级 WebView 内核通常包括以下步骤: 1. 检测设备上的当前 WebView 版本。 2. 从服务器上获取最新的 WebView 内核版本。 3. 下载最新的 WebView 内核。 4. 安装新的 WebView 内核。 5. 更新相关配置和设置。 通过简化这些步骤,用户只需点击一个按钮或执行一次操作,便可以完成整个升级过程,而不需要手动下载和安装 WebView 内核。 一键升级 WebView 内核使得开发者可以更容易地为用户提供 WebView 的最新版本和安全性保障。同时,用户也能够享受到更好的浏览体验和更高的安全级别。因此,对于开发和使用 Android 应用程序的用户来说,一键升级 WebView 内核是非常有价值的。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值