新买的一加8T到手了,趁着没什么数据,当然要折腾起来了。
本文,介绍了一加8T(或许可通用于Android11)
- 氢氧OS互刷,安装Play Store(包含解锁bl,降级)
- 安装Magisk框架获取Root(获取boot.img,打patch,刷入boot分区)
- 开启Magisk Hide,开启随机包名 以达到防检测目的(遇到个小坑)
- 安装Edxposed,并过SafetyNet(似乎是用来下载特定软件,如GooglePay、Netflix等)
- 通过XPrivacyLua屏蔽su检测或对话框取消模块等(不能保证绝对成功)。
- OTA升级后,如何保持Magisk框架还在。
- 其他(Magisk Lite、存储空间隔离、美好世界FD带来的启示、致谢等)
氢氧互刷,降级问题
国行版的一加手机,当然是氢OS了,如果你想要耍一耍氧OS,那你要忍住不要更新!否则就没法直接卡刷高版本氧OS,默认不允许同级或降级刷包。
建议使用氧OS的小伙伴,最好有软路由环境,否则感觉会很不方便。有网络问题,自挂梯子,不在下文重复了
本文建议爱折腾,有一定基础的同学看(其实作者也没什么基础hhhh),且文章会尽可能的不使用第三方工具(指一键刷机工具等)。
1. 最简单的方式 - 全量包直接升级
下载高版本的氧OS,直接系统中选择后刷入即可。
参考链接:
【原创组】OnePlus8T ROM包合集(第五版 已更新更新)
一加8T氧OS国际版全量包(不限速直连,持续更新)
2. 通过线刷救转方式
通过MsmDownloadTool 工具进行线刷,该方式还可用于救转
8T官方详细降级加救砖教程.9008降级救砖
3. BL解锁+Fastboot刷入
首先需要进行BootLoader的解锁。这步也是后面教程的必要条件
电脑下载adb、fastboot等Android SDK Platform-Tools。
(可将platform-tools添加到环境变量,方便之后的使用)
3.1 解锁会恢复出厂设置,注意备份
一加的解锁还是非常非常简单的,这里给出解锁命令。如果这里不能很好理解或成功的话,建议查询一下相关用法(比如手把手教你搭建完美的 Android 搞机/逆向环境),但建议不要折腾了。
adb connnect [手机ip地址] //连接到手机
adb reboot bootloader //重启到fastboot
fastboot oem unlock //进行解锁
3.2 fastboot刷入氧OS(我没有尝试第三步,但前两步工作也是后续需要的)
参考[[GUIDE] Convert TMO to Global, EU, or other variant](https://forum.xda-developers.com/t/guide-convert-tmo-to-global-eu-or-other-variant.4188491/)
这个没有找到很好教程,只找到一个英文的类似的教TMO运营商机刷为其他类型的教程。
基本流程这里介绍一下:
解锁后,首先下载你要刷入的系统的全量OTA包(下载地址见最简单的方式那里)。
-
通过python的payload_dumper进行解包工作 (重要,接下来的工作也要用到他)
使用Git clone或网页下载payload_dumper,地址:https://github.com/vm03/payload_dumper
需要python3和pip的环境,在clone的目录下运行
pip install -r requirements.txt
进行包下载。下载下来的OTA包是zip,提取其中的payload.bin,放入payload_dumper的目录
然后就可以使用
python payload_dumper.py payload.bin
进行解包操作了。output文件夹里面存放解包后的img文件。应该还可以看到boot.img,这个是后续刷面具的关键镜像,这里暂且不提。
-
将所有img一个一个进行刷入 hhh
这个我也失败了,后面感觉也没必要氧OS了,就没继续了hhhh
一个重点:参考刷入product、system等分区时,需要先执行
fastboot reboot fastboot
,看到fastbootd才可刷入。这个没有找到
4. 其他方式
之后获取root权限后,可以在Magisk里面刷入降级模块来直接刷全量包,我这里也没做尝试,就不展开了。
安装google Play
首先登入设置中的google账号,然后https://www.huaweicentral.com/download-latest-google-play-store-application-apk/这里可以下载google play。
安装Magisk框架获取Root
1.通过刷入第三方Recovery后刷入Magisk框架
就TWRP来说,暂时没有看到适配一加8T的Recovery(下文简称Rec),官方地址点这里:https://twrp.me/Devices/OnePlus/
似乎有别的Rec有做适配,我这里没做尝试,就不列举了,暂时觉得第二种方式就挺好的。
2.给Boot.img打patch以刷入Magisk框架
这种方式和我之前给Pixel Android10刷入Magisk采取了同样的方式,文章链接。(以后会想办法逐渐退出简书的)
这里做一些Copy吧。
1. 制作Boot.Img的Magisk Patch
首先在手机上安装最新版的Magisk Manager Apk。
接下来,将3.2中通过payload_dumper提取到的Boot.img
传到手机存储中。
根据网上的教程,我将Magisk Manager的设置中的更新通道选择为了测试版,并且能够成功,未尝试稳定版是否能刷入,读者可根据当时具体情况分析,可能稳定版也已经能支持了。
打开Magisk Manager
,点击Magisk后方的安装按钮,选择选择并修补一个文件,弹出对话框,我们选择预先拷贝到手机上的boot.img。
稍微等待,成功后,会看到这样类似的界面(这是旧图,仅供参考,请自己仔细阅读log)。
这时候,就可以检查手机的Download文件夹下面是否已经有magisk_patched.img了。
将其拷贝到电脑上,可以拷贝到fastboot工具的同目录下。
这个文件就是安装了magisk的boot.img。也就是所谓的补丁版。我们接下来就是要把这个镜像刷入Boot分区当中。
2. 刷入Boot分区
首先进入fastboot模式。
adb reboot fastboot
-
使用Fastboot刷入magisk_patched.img。
fastboot flash boot magisk_patched.img
其中
magisk_patched.img
替换为你文件所在的路径,如果就在FastBoot当前目录就无需更换了。
像下图(老图+1)这样就成功了。
开启Magisk Hide,开启随机包名 以达到防检测目的
解锁并刷入Magisk获取root后,会被银行、支付宝等软件检测到,弹窗并可能限制一些功能。
可以借助Magisk Manager自带的两种屏蔽手段来达到防检测的目的。
防检测
第一个就是随机包名,将Manger的包名进行随机,防止别的程序发现。
右上角设置中可以打开。输入你想要的给Manger取的名字(随意,后面可以用快捷方式的方法创建图标),确定,过程中间可能会有卡顿。
第二个是开启Magisk Hide
也是在设置中打开后,模块中会出现一个Magisk Hide,点击进去就可以为指定app设置隐藏了。
遇到的一个坑
我这边第一次开启随机包名,都不能很好的成功,要重启等很久..之后就没这个问题了,可能是因为我提前安装了《存储空间隔离》(不确定),尽量还是安装模块前就做了以上工作吧。
设置完成后,我用的app已经不会提示检测到rooted了。
解锁后,使用Tee技术的微信的指纹支付无法开启
我暂时没有找到解决方案。一加7系列有模块可以曲线开启,我这边也是同样无法使用。
安装Edxposed,并过SafetyNet
如果不需要Edxposed,其实可以安装Magisk Lite。过检测效果更好
在Magisk里面,选择Riru进行安装。应该就是以前的Riru-core,目前我成功的版本是23.0(时效性很短,请以官方发布的最新版本为准)
然后Riru - EdXposed
我一加8t,无法直接安装。这里给出一个解决办法(可能再过不久就不需要这种方式了,直接安装即可)
安装Edxposed
首先去github下载Edxposed Manager,然后右滑选择Canary版本(文章发布是最新版为v0.5.1.0_4613),进行EdXposed的下载。我这里使用的是SandHook版本,YAHFA没做测试。下载好后,进入Magisk里从本地进行安装即可。
安装好后的效果如图
过SafetyNet(可能是本地效果)
1.在Magisk 中安装MagiskHide Props Config,然后打开类似MT管理器
之类的有终端模拟器的软件。
输入su
,切换到root权限后,输入props
,接着选择Edit device fingerprint
,后按照提示选择自己的品牌和型号。
如图
2.在Edxposed设置中,选择通过SafetyNet校验
,还可以开启应用名单模式
然后就可以在Magisk里试试SafetyNet能否通过了,不过我通过了似乎还是下载不了Netflix,hhh,有人说EdXposed那个可能只是本地效果。我也不是很懂啦。通过效果如图。
通过XPrivacyLua屏蔽su检测、以及对话框取消模块
XPrivacyLua(以下简称为XPL)是用来细致地管理应用权限的,如读取通话记录、联系人、剪切板这些。
然后还有一个XPrivacyLua Pro(以下简称为XPL Pro),部分功能收费,通过hook方式来保护隐私。
其中有一个云端钩子叫做ProcessBuilder.start
,也可以用来屏蔽应用对su、root等的检测。
具体效果,似乎有用...但是基本上之前的做好了,用不到这个也行...我是因为之前已经被一个叫“美好世界FD”app检测到了Magisk框架,各种尝试都失败了,才用的这个,这个成功了一次...但最后发现我只要卸载重装就好了..是缓存了而已。
首先在Pro中下载
- ProcessBuilder.start
- Runtime.exec/array
- Runtime.exec/array/env
- Runtime.exec/array/env/file
- Runtime.exec/cmd
- Runtime.exec/cmd/env
- Runtime.exec/cmd/env/file
一共7个。
2.在XPL Pro主界面中开启(勾选)Fit
3.在XPL中将需要屏蔽检测的应用,勾选Use.shell
4.在ProcessBuilder.start脚本中的最下方输入正则su(\s.*)?
,不同的正则应该能产生不同的效果,祝你们玩得愉快hhhh,有好的玩法欢迎评论。
对话框取消
这个我没有成功,也是可以用来bypass检测,防止应用退出呀什么的。
是Edxposed的一个模块。有需要可以自行了解。
OTA升级后,如何保持Magisk框架还在
- 关闭所有magisk模块。
- 下载好新系统并安装完成后,系统会提示你是否要重启,不要重启。
- 打开Magisk Manager,点击Magisk后面的安装,点击“安装magisk到未使用的槽位(OTA后)”,安装完成后手动重启手机即可。
其他
Magisk Lite
Magisk Lite,仅有SU功能,不提供对模块的支持。
白名单模式的Magisk,所有应用程序默认隐藏,只有勾选的应用程序才能获得超级用户权限。
美好世界FD
这个游戏一直提示检测到了我的Magisk框架,最后发现做完基本隐藏,卸载重装就好了。T_T。费了好大劲。
来一玩素晴(虽然我玩的其实是不检测的日服)
一加双开
一加是提供了系统级的双开功能的,但是是白名单机制,有些软件不能双开,曾有一款大侠阿木开发的一加双开助手
可以绕过限制,但是一加8T实测失败。
通过“工作资料”实现双开的炼妖壶,实测可用。
存储空间隔离
RikkaW大佬的作品,功能如名字,需要配合安装Riru - Enhanced mode for Storage lsolation
。
具体用法功能,请看 https://sr.rikka.app/zh-hans/guide/
致谢
感谢一加论坛分享者和MeowCat TG群组,EdXp官方QQ群里群友的帮助。
同意OSCHINA同步
我的博客即将同步至 OSCHINA 社区,这是我的 OSCHINA ID:rikka_sec,邀请大家一同入驻:https://www.oschina.net/sharing-plan/apply