三星手机无 twrp 刷机方法研究 - GalileoLion/shuajizhenkuaile GitHub Wiki
本文为酷安用户 @夏元素 原创内容,未经许可不得转载,不许对文章本身以及里面用到的任何工具、任何系统包进行收费,这些工具和系统著作权归所有者所有,Samsung、三星是三星(中国)的标志。本文仅发表于酷安社区、wv开头的论坛和我自己的博客。所需文件和工具下载:
天翼云盘:https://cloud.189.cn/t/B7RRNrYNN36r (访问码:zpq3)
阿里网盘:https://www.aliyundrive.com/s/1Sy7nXXZMQH
百度网盘: https://pan.baidu.com/s/1yGnmONhQmydZJVX1AG_WaQ 提取码: f87f
开始之前:这个方法应该适用于多数三星手机,可以实现无 twrp 刷机,请先参考【用词详解】。本文以国行公开版三星 A60(SM-A6060)为例,主要目的是介绍方法而不是提供一个刷入特定系统的教程,有问题可以在评论区提出,希望 xdm 踊跃回答(???),我也不是大佬,就刷机多刷了几次,很多问题我也不懂,如果有需要我尽量回答。
!!!开幕雷击!这篇文章的操作会让你的三星手机失去保修、KNOX 永久性物理性熔断、造成三星健康、Pay、安全文件夹、Samsung Flow 等诸多软件无法使用,一定要谨慎考虑自己需不需要、值不值得!!!
导语和实验所得结论:
鄙人不幸,用过的两部手机(都是三星)都没有 twrp,然而还是用 C8 度过了我的初三,用 A60 陪伴我度过了整个高中,看着它兴起又没落很是感慨。从三星开天辟地的性价比之作,到每个周末回家等待 root 方法出现,结果一直没成功(主要是当时 Magisk 的自定义通道搞不懂),到 AndyYan 的 LineageOS……艹,太tm悲伤了这个基调,不行【怒火】。咳咳,欢迎来到本期(只有一期)动手动脚学刷机(应该有人看得懂我在玩的梗)。
总之受 AndyYan 的教程启发,我决定试试能不能让它(这垃圾玩意)用上类原生,多次尝试身心交瘁,决定留下说明,供其他人研究。经过测试,还没有能够启动的定制UI,能启动的都是类原生。目前经过测试可用的系统:(本来只开了两个,但是我找到原理了!)
Android 10:
Havoc、crDroid 等 gsi,基本上都可以日用,通病:MTP 目前不行,但是可以 adb,电信双卡卡二完全用不了,电信为了 LTE 需要进行一些小调整,VoLTE 似乎用不了。
Android 11:
LineageOS(AndyYan 制作的)但是有些问题,一段时间(可能是过热)是,会造成内存 bug(也可能是过热保护,我不确定),例如酷安会卡顿后返回上一页,原神会画面卡住无响应;其他类原生只能跨刷,并且由于跨刷的缘故极其不稳定,容易卡死重启。通病同 Android 10。
关于系统固件(vender),因为三星的固件对于 bl 有限制,如果安装了最新版系统的话 bl 等级是 ZCU3,那么我们刷系统只能刷 bl 等级是这个的固件,这个等级的 Android 10 三星固件只有一个,就是最后一版 Android 10(港版系统我没试过)。你问为什么不用 Android 11(OneUI 3)作为底包?Well,是这样的,经过实测,三星的安卓 11 像是有什么大病,除了 Lineage 别的死活开不了。我怀疑 10 和 11 是两套逻辑。而且实测 vender 11 的 Recovery 很难打开,操作不当的情况下 Recovery 有几率死活打不开,所以建议以 vender 10 为底包并且刷 Android 11 的类原生。下面是所有的尝试,需要注意,实际的系统底包是 AP,另外三件套是配套环境。
【试验田】
对于大部分 Android 11 的 gsi(这里的 vender 指 AP 外的三件套):1. 全部 vender10,能开易卡死重启;2. 全部 vender11,完全开不了;3. 三件套 vender10+AP11,开不了;4. 三件套 vender11+AP10,能开机且稳定性增强一点点,或者没有,易卡死重启
刷入方法:
预先准备:先滑到文章后面看【用词详解】,理解本文用词后再往下
- 下载并解压缩 Odin、三星系统包(把 AP 的后缀名的
.md5
删掉得到AP.tar
,不会改后缀名的话,恐怕这篇文章不适合你),路径最好不要带中文; - 在手机上安装 Magisk(不需要 root),然后安装→修补一个文件→选择一个
.tar
文件,然后等修补 finish,在/sdcard/Download
里找到修补好的系统包magisk_patched-23000_NATAD.tar
,把它拷进电脑; - 确保手机有网络可用,最好是 WIFI;
- 确保自己懂得怎么用 Odin、能够识别 Magisk 是否有 root 权限、能够理解和区分三星的下载模式和 Recovery,不会用的话看文章后面的【小白手把手】,先试试安全的刷个 OneUI 港版之类的系统;
- 最重要的是:带好脑子,少问多做,==不要伸手要别人做好的任何东西==,所有需要的东西都已经准备好了,自己去试。做好系统爆炸进不去的准备(基本上不会有刷机回不来的可能)。
Android 10:Havoc
-
先刷 Magisk 补过的10的最后一版系统包(10只有这个能装,四件套全套一起刷,AP 改用
magisk_patched-23000_NATAD.tar
!!!),开机之后点那个不带图标的 Magisk 然后让它下载安装,一般来说就有 Magisk 和 root 了,没有出现 Magisk 的话下载酷安装一个,然后 Odin 补过的系统包和 HOME_CSC 再刷一遍就有 root 了 -
有 Magisk 之后,点进去==确保它不用修复==(要的话会跟你说,点确定让你重启,重启完再看),从 Magisk 里点右上角重启到 bootloader
-
将 Havoc 的
.img
镜像重命名为system.img.ext4
,用 7-zip 打包(类型选.tar
)成system.img.tar
(注意!它自己出来的名字就是这个,不用你重命名的!) -
在 Odin 刷打包出来的
.tar
(你也可以一起刷 HOME_CSC,无伤大雅,但是其他的几件套不要一起刷!),刷进去重启时(从黑屏开始)按住音量上键(电源键可以按也可以不按。中途三星会给你一个警告,不鸟它,绝对不要松手),进入 Recovery,选择 wipe data,再选择 reboot system(如果只有三个选项的话就选择 Factory data reset),然后放着不管就能开机(理论上会带有 Magisk 和 root,但是实操的时候不一定得,见 Q&A)。成功开机的好兆头是听到电脑连接新设备的声音注意:如果没有进入 Recovery,而是出现 system update install 之类的蓝色背景+机器人肚子里原子转圈圈,那可能需要在下一次重启时进入 Recovery 执行操作
Android 11:Lineage
- AndyYan 自己有给出教程,这是我目前发现唯一能在 11 的底包下开机的系统。我的整次实验基本上都是基于TA的理论研究的
Android 11:dotOS、PE、fluid 等等
理论上基于 phh 的系统都能开机。仅仅理论上。(不稳定,基本上在飞机完成 Google 登录之前都容易死机重启,但是完成后系统会稳定些)
- 按 Havoc 的步骤刷10的 vender,最后系统包改用你想使用的原生包(A60 要的是 Arm64 ab 分区的包,因为有 sar)
杂交理论:如果刷包的时候留空 CSC 或者刷 HOME_CSC,那就会不清空系统,变成刷的系统融合进去。所以建议刷类原生前先清洁刷机:刷一遍四件套 BL、AP、CP、CSC(记住,你已经不需要 AP.tar
了,因为有了 magisk_patched-23000_NATAD.tar
)。
好啦,到这里你已经学会了,拿起 Odin 开始做杂交实验吧。【生气歪嘴】此处应该有一张滑稽杂交图。分离定律和自由组合定律。
生物圈:帮助我们更好的使用类原生
- Magisk 和模块,去酷安 Magisk 的评论区
- 图标包:在酷安可以找到很多,有些类原生 原生支持使用图标包,例如 Havoc 和 crDroid,在桌面(不是启动器)长按
Settings→Icons→Icon pack
- NFC卡模拟
- Thanox 帮助管理后台
- 深色模式切换
疑难杂症:
- 刷修补过的 OneUI 的时候卡在 Samsung 那里好久:如何判断系统启动?如果听到电脑的USB连接声,说明可开机。开在三星标志那里不要慌,就等,一般比较久,别急,三星给你装垃圾软件呢😅😑开好机就会发现一大堆。
- 刷了修补过的 vender 没有 Magisk 和 root:用酷安装一个 Magisk,然后再刷修补过的 vender 和 HOME_CSC。
- 我想只使用带有 root 的 OneUI,但是储存空间大小缩水:已知问题,我也不知道怎么解决,对我来说,刷一遍自定义ROM再刷修补过的 vender(AP)和 HOME_CSC 空间就正常了。
- 开机过程引导卡在谷歌转圈圈:大SB,带有谷歌服务的类原生开机时,先不要连接 WIFI,点击在离线状态下使用,不然就会 Google 转圈圈。
- 电信卡无法使用:先
*#*#4636#*#*
,然后网络信息里的模式选择带有LTE最长的那个(大多数时候可用,因为这样它会自己调),然后在SIM卡管理里面调成 LTE,接入点 apn 调成 ctnet。Havoc 特别,会自己跳回 ctlte,所以改选CDMA + LTE/EvDo (PRL)
,实在不行点进去,右上角删除。也可以试试 phh 设置里 IMS features 的选项。 - 最高和最低亮度黑屏:去 phh 设置里 Samsung features→Enable extended brightness range 应该就行。为什么没有自动亮度?因为 A60 刀法精准,没有光线传感器,用相机感光。
- 我刷了带有 GApps 的系统,结果它跟我说系统未通过认证,还一直弹出新信息振动发出声音怎么办?参考安装Google Play商店出现“此设备未经Play保护机制认证”问题_太平洋学习网|一个最全的javaweb,js,css,html5,csdn,android,linux的学习网站。 (tpyyes.com),登录谷歌设备认证,添加你的设备代码,然后最好通过 Magisk 重启一下手机。
- 还有很多奇奇怪怪的小 bug:去看看 phh 的设置能不能解决,实在不行去找模块刷。
- 要解决 Android 11 的 LineageOS 一段时间造成应用闪退、重启问题的问题,可看 AndyYan 的图文
Q&A:
- 怎么找到合适我的设备的 GSI?要先了解你的设备类型,在酷安找到 Treble Check,看是否支持 Project Treble(简称 pt),以及无缝更新类型,可以在评论区闲逛看看,了解一下自己的设备可不可以、要用哪种。例如:对于三星 A6060,支持 pt,所以可刷 GSI;A/B 分区(有时写作 AB分区),而且有 System-as-root(简称 sar),所以用 AB 分区的包;CPU 是
64-bit ARM
,综上对于 A60 我们要找arm64-ab
或者arm64-bv
的包。参考:Andy Yan's personal builds // GSI - Browse /lineage-18.x at SourceForge.net - 怎么判断一个自定义ROM的 GSI 能刷?多尝试,大不了再刷,大量事实(经验)证明:能用 7-zip 打开的镜像(
.img
)不是好镜像,因为都刷不进去,能刷进去的必定打不开(会提示什么头部错误尾部错误最好),好像是因为打包方式不同。要多找几个不同的人做的包,没准有的能开 - 怎么用 adb 传输文件?参考 (2条消息) ADB放文件和取文件\adb push 、 adb pull_a754315344的博客-CSDN博客,用
adb push
和adb pull
,大文件可能需要传输到一定程度才显示百分比 - 我刷的系统没有 root 和 Magisk 怎么办?确实,我也有些迷惑,我只有一次尝试获得了带有 Magisk 和 root 的系统,其他时候都没有。我半夜一点研究出了类原生 root 方法:将打包出来的类原生待刷包
system.img.tar(伯)
和修补过的三星 OneUI 的系统包magisk_patched-23000_NATAD.tar(甲)
一起打开,将后者里面的boot.img
拖进添加到system.img.tar(伯)
里,得到system.img.tar(仲)
,然后再修补一遍,得到新的包magisk_patched-23000_NATAD.tar(乙)
再刷,就行了(多刷一遍嘛,有啥大不了)。理论上现在这个包应该已经自带 Magisk。(因为 Magisk 修补三星刷机包.tar
文件时要用到boot.img
,所以直接修补system.img.tar(伯)
是不行的)【文件顺序:伯仲叔/甲乙丙丁】 - phh 和 AndyYan 都是谁?phh 是研究刷机的大佬,大多数 GSI(尤其是类原生)都基于他的研究,他有一个 GitHub 仓库 phhusson/treble_experimentations: Notes about tinkering with Android Project Treble (github.com);AndyYan 也是大佬,在酷安有号,我的尝试是基于TA的理论而来的。总之整篇文章用到的所有东西都是大佬做出来的,除了我。
- 我要去哪里找类原生的 GSI?请翻到文章倒数第二部分【实验报告】。总之就是往下翻。其实可以选择带有 R Mod 字样的GSI,这意味着它们自带面具。
- 有没有什么软件推荐?往上滑,看上面的【生物圈】章节。
【小白手把手&用词讲解】我的用词可能很糟糕,为了防止大家看不懂或者搞混,所以希望大家都来看看:
-
!!!这些操作会让你的三星手机失去保修、KNOX 永久性物理性熔断、造成三星健康、Pay、安全文件夹、Samsung Flow 等诸多软件无法使用,一定要谨慎!!!
-
下载三星系统包请用 hadesFirm,工具已经提供好。
-
修补:用 Magisk 选择文件修补。修补流程:打开
Magisk→安装→(默认勾选不要动)下一步→选择并修补一个文件→选择一个 Odin 包
,然后尽可能保持亮屏,等待它出现 finish 就得到修补包了 -
刷:一般指把文件放进 AP 槽用 Odin 刷入,如果要刷全套我会说明
-
vender:指 OEM 厂商(这里指三星)的系统,我用 vender10 指代 Android 10 (Q) 的三星系统(它搭载的是 OneUI 2),vender11 同理。AP 指的是 Odin 中的 AP 槽,AP10 特指 Android 10 的 OneUI,AP11 同理。
-
您好配置、欢迎界面:指的是首次打开系统时的欢迎界面和接下来的配置流程。为什么有不同的名字?因为这篇文章写作的时间跨度横跨两天半和几十次刷机,三星的欢迎叫“欢迎”,有些类原生是“您好”,有些tm招呼都不打就让我开始,所以用起来就不同了。
-
为了便于区分,本文 Magisk、面具 指的是 Magisk Manager,也就是那个绿色的面具软件;root 指的是系统是否带有 root 权限,有时系统带有 root 权限却没有 Magisk Manager,这种时候只要安装一个面具进去就可以了
-
下载模式、Downloading:指的是三星的下载模式,早期也叫挖煤模式、挖矿模式,是一个蓝色的界面配上一个下载箭头和一堆乱七八糟的话,用来刷写系统。启用方法:【音量下键+电源键】,我比较喜欢的方法是三个键全按住然后音量上
-
Recovery:也叫恢复模式,用来对系统进行一定的操作和查看 Log 排错。启用方式:在重启屏幕还未亮起时按住【音量上键+电源键】(三星会有一个黄色警告让你按电源键,别管它个狗东西!)一直按住,直到出现有很多选项的菜单。用音量键控制上下,电源键确定。
-
GSI:通用系统映像 | Android 开源项目 | Android Open Source Project (google.cn),谷歌的介绍自己看,再翻翻酷安,熟悉了再回来看本文
【附赠内容】跨刷 Android 11 攻略:
配置跨刷的 Android 11(就是上面说的 vender10 配上 11 的类原生),重点是您好配置过程尽可能跳过!!跳过PIN设置!!!不然容易卡死然后重启,重启后有两种状况:
- 系统还是正常的(或者又正常了),但是要重新您好配置。相信我,这是最好的一种可能了;
- 系统卡白屏 Google,然后疯狂闪屏,或者黑屏,电源键可以触发前者。这种状况一般没有开机动画,但这时系统是开着的,因为可以使用截图功能听到截图声。如果卡死了,或者疯狂闪了,稳住不慌,就按住电源键让它重启,重启完再次进入两种状况判定流程。
说实话就算判定结果为 1 也有可能卡死很多次,反正按住电源键,让它重启开机,有开机动画就成功一半,剩下的引导界面轻轻点慢慢来,能跳过的都跳过,总之先想办法进桌面,进去之后就稳定许多了,就算重启也无伤大雅(当然也有几率进入判定 2)。有些界面(主要是系统的)初次进去又卡重启,后面就好了(指多卡几次后,系统和你都麻痹了),没那么容易卡了。特别是开飞机配置完成谷歌服务之后。系统很流畅!可以达到日用水平。
实验报告(图)
实验报告:下面这个表格是从 Generic System Image (GSI) list · phhusson/treble_experimentations Wiki (github.com) 下载的ROM和无数次尝试中能开机的。amber-gsi(维护者叫 Igor-s7 )普遍能开机,但是毕竟跨刷,配置过程很艰辛。无论安卓版本A60上 gsi 的通病:无自动亮度、连接电脑不出现手机(但是能用 adb 传东西和调试)
底包 | 机包 | 维护 | 开机 | 日用 | Wifi | SIM* | 蓝牙 | GPS | 亮度* | 手电筒 | 热点 | NFC | 指纹 | 相机 | MTP | 备注 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
OneUI Magisk (Android 10) | Havoc 3.12 (Android 10) | skulshady, zenixxx | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ⭕仅可调试 | 共性 |
OneUI Magisk (Android 10) | crDroid 224 (Android 10) | eremitein | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔无人脸 | ⭕仅可调试 | 共性 |
OneUI Magisk (Android 10) | DotOS 5.0.0-1 (Android 11) | Igor-s7 (amber) | ✔ | ❌ | ✔ | ✔ | ✔ | ✔ | 无 | 您 | 好 | 引导 | 用 | 不了 | ⭕仅可调试 | 卡死重启 |
OneUI Magisk (Android 10) | amber-gsi (Android 11) | Igor-s7 (amber) | ✔ | ⭕ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ⭕仅可调试 | 配置过程艰难 |
OneUI Magisk (Android 10) | DotOS 5 (Android 11) | Community | ✔ | ⭕ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ⭕仅可调试 | 配置过程艰难 |
OneUI Magisk (Android 11) | LineageOS 18.1 (Android 11) | AndyYan | ✔ | ⭕ | ✔ | ✔ | ✔ | ✔ | 完美 | ✔ | ✔ | ✔ | ✔ | ✔无人脸 | ⭕仅可调试 | 内存bug仍然存在 |
意犹未尽?来试试课后思考:
如果还有精力的话,麻烦大家研究一下这几个课题:
- 动态系统更新 (DSU) | Android 开发者 | Android Developers (google.cn):这些类原生系统中有一部分自带有刷 Google GSI 需要的设置,在开发者选项中开启尝试一下吧。我没能成功的把镜像刷进去,希望有人能成功,Android 12 GSI 二进制文件和版本说明 | Android 12 Beta 版 | Android Developers (google.cn)
- [已解决]ODIN 闪存失败(用于降级、自定义 ROM 等)|XDA 论坛 (xda-developers.com):尽管 A60 好像已经不会再得到升级了,但是成功降级意味着有更广阔的 GSI 选择,特别是 Android 9,有很多 GSI可以尝试
- [指南][自定义]如何使用 ODIN 安装自定义 ROM 而不使用 TWRP [PHH] [LineageOS]|XDA 论坛 (xda-developers.com):这是我最先看到的教程,理论上用于那些可以被 7-zip 打开的 GSI,但是 A60 似乎少一个文件,有人声称 A60 可以,反正我没有成功。