帮助完善体验,Android x86 相关问题解决方案
去年发过一些Android x86的相关内容,发现很多人都有遇到过一些类似的问题,这里分享一下部分问题的解决方法(只针对安装在硬件上的问题,不包括虚拟机)。
使用以下或同类型工具可能对过程有帮助。
Android x86:ES文件浏览器、MT管理器
PC:7-Zip、DiskGenius Pro
Q1:安装后卡开机(进不了系统)
这种大概就是硬件和系统内核不兼容,除了更换系统镜像外无解。事实上不同Android x86之间的主要区别一般都在内核版本和Android版本上,Android版本会影响功能,内核版本影响性能和兼容性,而内核相关的文件中又包括了显示驱动,所以有些时候也会遇到进入系统后分辨率不正常、卡顿或者只能显示开关机黑屏无法操控的情况。判断显示驱动是否正常可以参考设置中的Open GL项,比如下图中正确显示Mesa版本号说明驱动正常,除此之外的显示结果基本都是兼容性显示驱动,这种驱动在系统流畅性以及性能方面都远不如正常驱动。
目前主流的Android x86版本是从Android 7 - Android 10,它们的功能差异如下
Android 7:修改版Android x86居多,大多都支持非原生多窗口且非常好用,一般内置手游映射,但性能方面相对于高版本的Android x86会弱一些,即便内核和显示驱动相同。
Android 8:相比于7主要增加的特性有谷歌自动填充、LDAC、原生画中画、Vulkan模式(需硬件支持)。
Android 9:相比于8增加了全面屏手势和非线性过渡动画,应用权限细化。
Android 10:相比于9更新了全面屏手势和好用很多的原生多窗口。
全面屏手势的区别可参考这两个视频:Android 9、Android 10
因此,如果以手游为主要用途建议选择Android 7 和 Android 8的Android x86,更看重触控体验的话可以选择Android 9和Android 10的版本,前提是硬件要对新版本内核支持够好。
Q2:应用不兼容
一般情况下在系统设置里会有x86兼容性的选项,不过看到部分人反应过这玩意无效,如果遇到这种问题可以在关闭兼容性开关的情况下在终端运行 enable_nativebridge,之后会自动下载一个houdini.sys文件,Android 9的版本则是打开兼容选项会自动下载,不过即便这样做了也同样会有APP不兼容,只是情况可能比之前稍好一些。
Q3:触控无效
首先这个问题目前对多数设备来说就是无解的,有方法解决的设备仅限搭载了第3、4、5代i U的设备且最好为苏菲系列。按照Bliss OS网站提供的信息(地址),这些设备需要根据硬件下载对应文件替换掉system中lib/firmware里面的几个文件夹(个别可选),具体参考下图。(如果设备为苏菲Go还需要进行更多操作)
但这个方法应该是限制了系统必须是Bliss OS的ipts版镜像,不然在替换文件后同样无效,如果用的不是这个镜像,还需要将目前的系统内核更换为Bliss ipts镜像的内核,方法是替换lib/modules里的文件夹以及系统kernel文件。
但我在SurfaceBook上用这种方法实测只对Android 7的PrimeOS有效,在不支持触屏的原版Android x86和非ipts版Bliss OS上都出现了问题。其中原版Android x86的问题在于复制必需文件时会提示错误,看了一下里面有个loop0文件安装系统后就只剩97M,在报错后会被占满,而且不管是系统内和系统外都访问不到这个loop0,PrimeOS则压根就不存在这个文件。此外,PrimeOS在安装后system是处于解包状态,从系统外部就可以直接访问和替换文件,而高版本Android x86的system都是以img形式的未解包状态存在,文件只能从系统内部替换。Bliss OS的触屏问题和原版Android x86不同,在更换ipts内核后直接就能触控,根本不需要替换firmware里的文件,但是在重复两三次开机后会直接卡开机,就算替换了firmware里的文件也一样,原因未知。
另外,ipts镜像默认驱动是SurfaceBook的,也就是说SurfaceBook使用ipts镜像时无需任何操作触控就是正常的,而Suface Pro 3之所以直接支持多数Android x86触控的原因大概是这些开发者都用它来做测试吧。
Q4:Magisk安装
关于面具安装有通用方法,实测对Android 7、8、9的Android x86都适用,不过前提是系统已root(通常Android x86为自带root)。这个过程的步骤较多建议参考这个视频。简单来说就是利用原版镜像的ramdisk.img、kernel、initrd.img生成新的boot.img,在Android x86中安装magisk manager,将magisk写入boot.img,之后会多出一个magisk_patch.img文件,停用su权限后将magisk_patch.img重命名为boot.img复制到Android Image Kitchen的主目录,使用脚本生成新的ramdisk.img、kernel、initrd.img文件,之后用这三个文件替换掉系统文件即可。
不过使用这个方法安装的Magisk并不完美,有很多模块不起作用而且即便是安装成功也不会在magisk中显示,实测有效的模块有机型模块,像riru这样的edxp相关模块无效。
Q5:安装、引导以及卸载
Android x86的安装和卸载并不会对主系统产生任何影响,完全绿色化,但也并不是简单把分区格掉就完事了,如果文件没有删干净就可能会出现问题。安装时个人只推荐使用镜像文件通过rufus或类似功能的软件写入u盘再安装到硬盘,最好给Android x86单独分个盘避免混乱,不推荐在win下用工具安装,这样可能会出现多余文件,安装时要选择默认的grub引导,分区格式建议选择ext4,虽然在跑分上不如ntfs但安装程序和拷贝文件时的速度明显是ext4更快。
要完全清除Android x86除了格掉系统盘外还需要删掉ESP分区里的一些文件,具体见下图红框文件,最后使用BOOTICE或类似软件删除Android x86的启动项就可以了,如果安装Android x86后默认没有进入系统也是要用这个软件把Android x86的启动项调到首位。
总结
Android x86一直是小众的原因除了软件兼容性不佳,各种匪夷所思的硬件问题才是关键,毕竟Android最开始就不是为x86设备准备的,而且x86处理器在整体数量上也远超arm,可能新版本镜像更新一下内核就能让一堆安装设备出现各种不兼容问题,因此不必非要用最新版的Android x86,选择一个可正常使用的就行了。如果需要触控使用苏菲系列依然是最佳选择,但仅限于3、4、5代产品,其他设备还是i U搭配A卡为最佳,原因我在之前的文章提到过,这里就不废话了。
目前SurfaceBook安装PrimeOS并替换ipts内核和固件后体验还是不错的,虽然在不少细节上还存在问题,但最关键的触控和显示驱动都比较正常,常用的微信、微博、TIM、B站、爱奇艺、JD、油管、各种浏览器等APP运行也没啥问题(能在play商店下载安装的APP基本上都行),多窗口模式和基于10的Android x86相比体验基本一致,但目前Android 10的稳定性确实太差且内核正常的版本不支持root且无法触控,仅适合尝鲜。基于9的Bliss ipts版本虽然稳定性和APP兼容性很好,不过多窗口着实难用,由于内置的是SuperSU所以安装Magisk时并不能完全套用Q4的方法。若使用PC运行Android x86可以获得最佳的性能和系统流畅度,在各个方面均大幅领先目前所有的移动设备。
以上就是文章的所有内容,如果各位有什么问题可以留言,我可能要到七八月份之后才能回复。
焱炎火
校验提示文案
梁静茹给的勇气
校验提示文案
鲤伴先生
校验提示文案
鲤伴先生
校验提示文案
梁静茹给的勇气
校验提示文案
焱炎火
校验提示文案