Code Monkey home page Code Monkey logo

webviewupgradelib's Introduction

WebViewUpgrade

简体中文 | English

还在经受WebView差异化带来的兼容问题,还在为腾讯X5内核收费所困扰,这个库也许就能轻松解决这些问题,它实现了Android免安装升级WebView内核的功能。如果你觉得有所收获,给这个库点个Star吧,你的鼓励是我前进最大的动力,这年头写代码不就这点追求嘛😊。

Android5.0以后WebView升级需要去Google Play安装APK,就算安装了以后也不一定能行,像华为、Amazon等特殊机型WebView的Chromium版本一般比较低,只能用它自己的WebView无法用Google的WebView。

我就遇到了华为机上因为WebView内核的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内核的包名、版本、包地址传到以下代码升级内核成功后就可以播放H265视频了

WebView内核选择页面如下图所示

升级成功的WebView内涵的包名变成了com.google.android.webview,UserAgent中的Chromium实际版本也变成了122.0.6261.64

兼容性

Android的设备五花八门,已测试以下功能和机型,欢迎大家提issue和Merge Request加入到这个项目中来,有疑惑可以扫码加群,如果二维码显示过期了,可以搜索微信号JonaNorman加我个人微信拉你进群(请备注WebView升级)

功能特性

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
Stargazers repo roster for @JonaNorman/HDRSample Forkers repo roster for @JonaNorman/HDRSample

webviewupgradelib's People

Contributors

jonanorman avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.