当前位置:   article > 正文

Android WebView内核版本的探究

webview内核

因公司的很多项目都是Android和html5混合开发,会有很多页面的方法需要兼容。需要知道当前Android webview的内核是什么。

1. 介绍

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较佳

查看当前版本,可以用WebView访问http://html5test.com/   这个地址,查看具体的类型和版本

系统自带的WebView

自带WebView

2. 更新Webview内核

  1. 下载对应你Android系统的chrome内核版本: Google个版本Webview下载(注意:可惜的是这个地址需要翻墙才行)
    这里还要注意下载的webview.apk对应你的系统版本及架构(比如我的系统是arm64 的Android 7.1.1),下载时注意下图:


    如果你编译的系统架构是arm64的就将下载下来的webview.apk替换system\app\webview\prebuilt\arm64里的webview.apk。(不同的手机操作系统,具体的路径不同)。
    修改默认的包名:/frameworks/base/core/res/res/xml/config_webview_packages.xml ,由com.android.webview 修改成com.google.android.webview
    重新编译系统源码即可。

    注意: 不要用Chrome浏览器验证,因为Chrome浏览器默认自带内核的,它不使用Android系统自带Webview内核。比如下图是我装了Chrome浏览器后用命令测试结果(其使用的是Chrome自带的81内核,而不是我系统更新的72内核):

如何更新Android源码中的Webview内核_Xiaoma_Pedro的博客-CSDN博客_android webview源码

android webView 内核对比_w2ndong的专栏-CSDN博客_android webview内核

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/686920
推荐阅读
相关标签
  

闽ICP备14008679号