这几天给手机折腾刷面具,获取root权限,以及装edxposed实在麻烦,遇到很多问题,反复来过很多遍,请教过很多大佬。
在此,整理下过程遇到的问题及解决过程。
OEM解锁
第一步OEM解锁非常重要,解锁之后才能通过twrp进行刷机包安装。
必须要注意:解锁之后手机会清空所有数据,注意备份数据。
网上推荐备份的软件:Titanium Backup(钛备份)、swift backup、Helium(氦备份)
对于事先没有root的手机,前两款是用不了的,最后一款Helium需要配合电脑连接,通过开发者模式的adb启用类似临时系统权限。
即便如此,Helium我也没有成功备份,总是遇到些许错误。
这里推荐用google photos备份你的照片外(会记录你的时间线),其次把手机存储上需要的文件手动备份到其他可靠位置。
最后通过,一加内置的“一加搬家”进行备份数据,完成后通过数据线连接电脑将你的备份数据拷走,因为是文件夹形式,最后建议打包存储到硬盘里,方便后面恢复。
一加会备份你多个相册,但是会乱掉,时间线或者相册无法完全恢复到最终的结构,只能是数据还在。除了相册,例如基础的手机数据,包括最左侧的便签都包含。
工具包下载:https://lanzous.com/ibn99kh
下载刷机工具包,解压并在其中的fastboot文件所在目录,按下shift+鼠标右键点击打开powershell,以便后续解锁。
解锁步骤:
- 设置-关于手机-版本号码-连点“版本号码”以开启开发者选项。
- 设置-系统-开发者选项-勾选OEM解锁
- 设置-系统-开发者选项-勾选进阶启动/高级启动
- 长按开机按键,点选开机启动器/引导启动器
- 通过数据线连接到PC,通过powershell执行 “fastboot oem unlock”
- 手机端询问是否解锁,通过音量加+-选择“UNLOCK THE BOOTLOADER”,并通过开机键按下确认
- 解锁完成,可通过开发者选项-查看OEM选项
TWRP刷入
手机解锁之后,在开机情况下将开发者选项中的“进阶启动/高级启动”打开之后,长按开机键,点选开机启动器。
如果是关机模式下,长按"音量-"及"开机键"即可进入fastboot模式。
下载地址:
在解压后的目录通过按住shift+鼠标右键打开powershell
通过fastboot devices检测设备是否连入
> .\fastboot.exe devices
如果有显示:8b4f0000 fastboot 类似的就表示有效连接,若没有重新来过此步骤。
刷入一次性的twrp
这里的路径为你的twrp的镜像路径,解压到哪里就是哪里,可以通过拖动文件到powershell直接获取路径。
.\fastboot.exe boot "C:\Users\Administrator\Downloads\TWRP-3.3.1-79-Q.img"
这种启动方式是一次性的,具体为手机A/B分区问题,可以参见其他google其他解答。
刷入Magisk
保持上一步骤中twrp状态下进行此步骤
将你的magisk拖入手机存储中,或者邮件magisk.zip右键发送到手机设备也行。
刷入过程很简单,只需要在首页点击安装按钮-找到并选中magisk.zip的包,确认安装就行。
注意:在这里推荐各位下载最新符合自己系统用的刷机包,再刷一遍完整系统包。因为无论是oem解锁或者恢复出厂设置的系统都残缺很多应用,例如“一加小部件”会在数据备份恢复后,无法正常显示。天气等应用问题也很多。
系统下载地址:https://www.oneplus.com/de/support/softwareupgrade/details?code=PM1574156267635
所以,推荐的步骤是:
- 刷入系统(OnePlus7ProOxygen_21.E.24_OTA_024_all_2002022314_12cfa8192fee4cf5.JAR)将JAR后缀改为zip,否则twrp不会识别。
- 开机确认无误后,重新引导进入fastboot,再次启动twrp
- 刷入magisk
恢复系统数据
将之前备份的数据打包为zip拖放到手机存储中,并解压。(打包只是为了传输更快)
打开“一加搬家”,点击底部的备份恢复,会发现什么都没有,不过此步骤会在系统目录下创建“opbackup”文件夹。
你此时只需要将你备份数据解压到opbackup目录下的MobileBackup里就可以。(可以先解压,再删除原有的MobileBackup,将你的目录剪贴过去都可以。)
再次打开“一加搬家”,备份恢复。点选备份记录确认恢复。等待恢复就可以了,过程中app恢复时间较长,还会提醒你有的应用不安全是否仍要安装。
edxposed
为了保证你的safetynet是双绿,请按后续步骤一步到位。
- 打开magisk-manager-设定-magiskhide(将其选中)
- 重启
- 打开magisk-manager,左侧会多出一个magisk hide,点击并将其列表中的google play服务全部选中。
- 尝试测试safetynet,应该是双绿,如果不是重启再测试safetynet
接下来安装edxposed
下载地址:https://github.com/ElderDrivers/EdXposedManager/releases
- 下载edxposed-manager,安装到手机中并打开,选中“canary”,并选择安装更新。他会将最新的edxposed安装包下载到系统download目录下。
- 在magisk-manager中“线上模组”,搜索riru-core 并安装。
- 在magisk-manager中“模组”,点击"+"图标,并找到download下刚才下载的edxposed最新包,然后安装。
- 重启
- 在magisk-manager中“模组”检查edxposed是否安装成功,并在edxposed-manager检查xp是否安装成功。
不出意外,此时你的safetynet应该是双红,是因为框架托管给edxposed了,我们还需要在edxposed设置一番,类似于magisk-hide的操作。
- 打开edxposed-manager,设定-应用程序清单模式 (选中)
- 打开edxposed-manager,设定-使safetynet通过验证 (选中)
- 打开edxposed-manager,应用程序,应该已经勾选中了google服务框架以及googleplay服务。(如果没有应用程序,先重启再继续)
- 打开edxposed-manager,应用程序-magisk-manager(将其选中)
- 打开safetynet测试,双绿通过,如失败则重启再测试。
升级系统
如果以后升级系统,需要通过以下方式保持magisk正常,且不会被edxposed搞坏系统。
- 下载安装OTA更新包,安装完毕后,不要重启系统。
- 打开magisk-manager,设定-magisk核心模式(选中)
- 打开magisk-manager,首页的magisk点击安装-安装到其他分区位置。
- 然后再重启
- 检查系统正常,magisk正常后,再关闭magisk核心模式(取消选中)
- 再次重启让edxposed有所有权。