webview 运行时更新

JonaNorman bb5f22ce47 add readme 1 年間 前
app bb5f22ce47 add readme 1 年間 前
gradle 9ca620f967 add file 1 年間 前
preview bb5f22ce47 add readme 1 年間 前
.gitignore 0b63d349b4 Initial commit 1 年間 前
LICENSE 0b63d349b4 Initial commit 1 年間 前
README-ZH.md bb5f22ce47 add readme 1 年間 前
README.md bb5f22ce47 add readme 1 年間 前
build.gradle 9ca620f967 add file 1 年間 前
gradle.properties 9ca620f967 add file 1 年間 前
gradlew 9ca620f967 add file 1 年間 前
gradlew.bat 9ca620f967 add file 1 年間 前
settings.gradle 9ca620f967 add file 1 年間 前

README-ZH.md

WebViewUpgrade

简体中文 | English 这个库实现了Android免安装升级WebView内核的功能。 Android5.0以后WebView升级需要去安装APK才行,国内没有Google Play的情况都无法找到升级包,就算找到了像华为、Amazon等特殊机型WebView的Chromium版本一般比较低,只能用它自己的WebView无法用Google的WebView。 我就遇到了在华为机上用WebView无法播放H265视频的情况,因为Chromium版本低于107就无法播放H265视频。 为了解决上述问题,一般常规做法是用JS实现H265播放,但是会比较卡,这个时候我就想能不能让WebView用应用内的APK作为内核,下图是升级WebView内核的前后效果对比 preview 明显发现在华为机上系统的WebView内核包名是com.huawei.webview版本是14.0.0.331,UserAgent中的Chromium实际版本是99.0.4844.88,如下图所示小于107不支持H265播放 webview_can_not_play_h265 把WebView内核的包名、版本、包地址传到以下代码升级内核成功后就可以播放H265视频了 upgrade_code.png WebView内核选择页面如下图所示 choose_webview.jpg 升级成功的WebView内涵的包名变成了com.google.android.webview,UserAgent中的Chromium实际版本也变成了122.0.6261.64 webview_can_play_h265.png

兼容性

Android的设备五花八门,已测试以下功能和机型,欢迎大家提issue和Merge Request加入到这个项目中来

功能特性

WebView包名 系统版本
com.google.android.webview 122.0.6261.64
com.android.webview 113.0.5672.136
com.huawei.webview 14.0.0.331
com.android.chrome 122.0.6261.43
com.amazon.webview.chromium 118-5993-tv.5993.155.51

机型

厂商 系统版本
华为Mate30 12
小米10 11
VIVO NEX A 10
OPPO FIND X5 14

待开发功能

  • 多进程
  • 动态切换

⭐ star历史

Star History Chart

特别感谢

Stargazers Forkers