安卓x86目前只有安卓5.1可用,使用的ROM是mirek定制的,有root方便进行一些调整。为了提升体验,感觉有几件事情可以做。
更新webview
刚刷完rom之后,发现webview版本过低,比如我的平板,webview版本是39,有的页面都没法正常渲染。于是考虑去更新webview。通过AI搜寻可知,最高版本的webview是95。这个过程主要就是需要找到x86版本的apk包。
但是遇到一个问题:Android 5.1 原生 WebView 包名是 com.android.webview,而 Google 官方新版 WebView 包名是 com.google.android.webview,这样装了最新的webview包也没用。系统通过 framework-res.apk 中的配置决定用哪个包作为 WebView,所以,还需要对它进行修改。
修改framework-res.apk有很多方法,需要root,我采取的是用apktool进行修改。首先提取该apk
bash
adb pull /system/framework/framework-res.apk
然后是用 Apktool 反编译(使用该工具需要安装java):操作时,需要把apktool.jar和apk文件放在一起
bash
apktool d framework-res.apk
直接执行上面的命令,如果说apktool命令不存在,是缺失了apktool.bat,可以复制下面的话,保存到txt文件,然后改名apktool.bat
bash
@echo off
java -jar "%~dp0apktool.jar" %*
修改 WebView 包名配置,去framework-res/res/values/strings.xml里面,将
xml
<string name="config_webViewPackageName">com.android.webview</string>
改为
xml
<string name="config_webViewPackageName">com.google.android.webview</string>
最后重新打包
bash
apktool b framework-res -c
注意Apktool 用的是2.3.1,高版本没-c参数。
直接推送 Apktool 重新打包的 APK 到系统会导致无法开机。你需要从原始的 framework-res.apk 中提取两个关键部分,并替换到新打包的 APK 中:AndroidManifest.xml 文件和META-INF 文件夹(包含签名信息)。
操作方法:用压缩工具(如 7-Zip)打开新打包的 APK(不要解压),将原始 APK 中的 AndroidManifest.xml 和 META-INF 文件夹拖入新 APK 中,覆盖同名文件。
最后, 将处理好的新 framework-res.apk 复制到手机存储。使用 Root 文件管理器,将其复制到 /system/framework/ 目录,覆盖原文件。检查权限:确保新文件的权限与原文件一致,通常是 rw-r--r-- (0644)。
重启后生效。
更新证书
之前打开网页,还出现问题"与s4.zstatic.net的连接不安全",这是证书问题导致的,需要加入ISRG Root X1证书。去网上找DER 格式(isrgrootx1.der)。
下载之后,用openssl计算hash
bash
openssl x509 -inform DER -subject_hash_old -in isrgrootx1.der
得到的数字XXX,将文件名改为XXX.0(以0为后缀)。
然后将文件传到平板,复制到/system/etc/security/cacerts/,并且修改文件权限:rw-r--r-- (644)。
重启后生效。
软件使用
目前,能用旧版本软件就凑合用吧。