去年就听说了 Cyanogenmod 出现困难的局面情况,接着在年底 Cyanogen 发布了一个震撼级别的消息:Cyanogen 将在年底停止服务(原地址)。这种消息还是很劲爆的了,毕竟 Cyanogenmod 是一个有很久历史的 Android 第三方系统。在停止服务后原团队成员开始筹划下一步的动作,让大家放心的是原团队成员重新以 Lineage OS 的新项目继续开发。年初 Lineage OS 开始编译更新,那时候我在用 MIUI国内版吧,就想借此机会换掉 MIUI 重新回到原生 Android 的怀抱。
请注意:
1.这是个人操作得出的方法,仅具有参考性;如果出现任何问题本人不承担任何责任。
2.刷机过程不提供任何截图说明。
3.如果觉得步骤太麻烦,可以直接跳到补充说明看简化版步骤。
4.一切操作都是在手机默认出厂的设置下进行的(锁了 BootLoader 并且加密了 Data 分区)。
提前准备
- BootLoader 解锁工具
点击这里,只要跟着说明填写申请就可以了,等待到审核通过后就会获得解锁工具 - Android SDK
Android SDK 中的platform-tools
(内有fastboot
命令行工具,用来安装 Recovery),tools
安装可选(最好选上吧,因为有adb
命令行工具,方便) - Recovery
红米 Note4X 使用人数最多的也就只有 TWRP 吧,默认删除dm-verity
,至于dm-verity
是什么,可以参考官方文档,简单理解就是校验,防止分区被修改一个措施
地址:点我 - 刷机包 / Root 包
Lineage OS 的官方下载页面:https://download.lineageos.org
(红米 Note 4X 的设备代号是mido
,直接选择Xiaomi>mido
)
Root 包下载:https://download.lineageos.org/extras
因为 Lineage OS 不自带 Root 权限,所以需要刷官方提供的 Root 包以启用 Root
(mido因为是 64 位架构所以选择su (arm64)
下载) - 底层(如果手机运行的是最新版 MIUI,可以跳过)
地址:点我 - 内核(可选)
Lineage OS 基本上已经完善了,但如果想提高性能,可以刷第三方内核
第三方内核太多了,在 xda-developers 里面有很多第三方内核
内核:点我 - GApps(可选,如果想体验 Google 服务必刷)
现在的 GApps 有挺多的,最出名的是 OpenGApps
OpenGApps 网址:http://opengapps.org
(在这里依次选择ARM64
,最新的 Lineage OS 基于 Android 7.1,所以选择 7.1。类型因为个人喜好这里我选择的aroma
,带有安装时可选的功能,如果想体验标准 Google 服务请选择micro
) - 备份数据
在这里我备份了自己的内置存储和应用数据
如果你的主要文件存在内置存储并且 MIUI 对应的 Android 版本为 6.0,请务必全部备份好,后续步骤会清空内置存储,如果是基于 Android 5.x 的 MIUI,请跳过对应步骤
注意:
experimental
正如其名,实验版,在这里是提供给旧的 Cyanogenmod 用户用来迁移到 Lineage OS 用的,如果你目前的系统是 Cyanogenmod,可以先刷这个包然后直接刷nightly
即可完成升级迁移过程,如果不是请不要下载此包,此版本有水印并且不提供给日常使用。- 如果你是其它机型,请选择对应的架构进行下载!带有
removal
的为移除包,在你安装完 Root 权限后如果想移除则刷此包。否则不要下。
第一步:解锁 BootLoader
开始解锁
- 按
电源
+音量下
,进入bootloader Mode
(未解锁之前用bootloader
更合适吧) - 打开软件,使用数据线将手机连接电脑
- 软件会出现已连接手机的界面,确认无误后点击解锁
- 等待一段时间后,出现解锁成功的界面
已完成 bootloader
解锁操作
此时点击完成后手机会重启,但不要进入到系统,依然按 电源
+ 音量下
进入到 fastboot
界面,同时保持手机与电脑的连接
注意:
- 如果需要解锁请刷 MIUI 开发版,稳定版暂不支持解锁操作!在这里省略 MIUI 稳定版升级成开发版的方法
- 解锁前必须保证手机系统绑定的 MIUI 账户和申请解锁的账户相同,否则会出现验证失败。
第二步:安装 Recovery 并清空 Data
- 找到你安装的
fastboot
所在目录,按住Shift
+右键
,选择Open command window here(在此处打开命令行窗口)
,输入以下命令:fastboot flash recovery 你下载的Recovery名字.img
- 等待完成刷入后,让我们来启动 TWRP
fastboot boot 你下载的Recovery名字.img
- 稍等片刻后,手机就会进入 TWRP
如果你是基于 Android 5.x 的 MIUI,可跳过下面步骤
重点部分:因为 MIUI 官方对基于 Android 6.0 以上的 MIUI 进行了data
分区加密,目前没有办法解密,所以会清空data
分区以解决这个问题,不然无法刷机 - 出现
Enter Password
界面后,选择Cancel
,然后选择语言,点击Select Language
向下滑选择中文(简体)
,此时界面就会变成中文了,然后会询问保持System分区只读模式?
,在这里直接滑动下面的按钮以确认修改。 - 然后点击
清除
>格式化 Data 分区
- 在对应界面输入
yes
,然后等待操作完成
注意:
- 请保证你备份好所有数据,请保证你备份好所有数据,请保证你备份好所有数据!进行该操作所有分区都会清空!
- 如果你是基于 Android 5.x 的 MIUI,请跳过清除 data 的步骤,除非你想格式化整个手机。
data
清空完毕
返回主界面,点击重启,选择 Recovery
。此时依然不要断开电脑与手机的连接!
第三步:刷入 Lineage OS、Root 包、GApps、第三方内核
- 在重启后的 Recovery 中选择
清除
>高级清除菜单
,将Dalvik / ART Cache
、System
、Cache
、Cust
勾选,然后滑动确认清除 - 在主界面中选择
挂载
,然后检查MTP 模式
是否开启,如果开启并且电脑正确显示 Redmi Note 4X 的设备,则将下载的 Lineage OS 刷机包、Root 包、GApps、内核 复制到根目录(这里以复制到内置存储的根目录为例) - 安装完成后返回主界面,选择
安装
,点击你所下载的Lineage OS 名称.zip
,在确认界面中点击添加更多卡刷包,然后选择底层
、你下载的Root包名称.zip
、你下载的GApps名称.zip
和你下载的内核安装包.zip
- 添加完成后滑动开始刷机
- 等待数分钟,直到全部完成
- 再清除一次
Dalvik / ART Cache
注意
- 如果出现刷机失败,请仔细观察错误代码然后查找资料解决。
- 复制文件到手机的方法有多种,这里以简单并且常用的
MTP
方式说明。
接下来就是重启了 =w=,如果步骤没错的话一切都会顺利并且能看见开机动画进入系统。新的开机动画还挺好看的,眼睛就盯着那几个点转来转去(
进入系统后,久违的就是 Google 化的欢迎向导(刷了 GApps 后),恢复应用数据和内置存储,然后更改个人设置喜好
Lineage OS 相对于 Cyanogenmod 还是没变多少,大多就是改了个名,然后彩蛋界面变了,再就是贡献者的图案也变了。
补充内容
- 如何开启 Root
(前提是你刷了 Root 包)
进入设置
>关于手机
,狂按版本号
,显示已启用开发者选项
。然后进入开发者选项
,点击Root 授权
,选择应用 与 ADB
Root 权限成功开启 - 修改 DPI
DPI 可以理解成是像素密度(非屏幕),DPI 值越大像素越小,所以显示的东西也就会越小越多,Google 在 Android 7.x 中开放了对于 DPI 的修改,可以直接进入开发者选项
,在绘图中点击最小宽度
,选择合适的值即可,在这里我选择的是380dp
。
点击确定
,修改完成 - 如果你看不懂上面这些,这里还有个简化版
(此方法不需要安装 Android SDK)
解锁同第一步,解锁后继续停留在fastboot
页面
刷入 TWRP
保持手机与电脑的连接,打开工具,按照说明操作
如果成功,将会自动进入到 Recovery 页面
如果你是基于 Android 5.x 的 MIUI,可跳过下面步骤
重点部分:因为 MIUI 官方对基于 Android 6.0 以上的 MIUI 进行了data
分区加密,目前没有办法解密,所以会清空data
分区以解决这个问题,不然无法刷机。内含重要数据的请做好备份!
输入密码页面点击取消,然后改好语言,点击清除
>格式化 data 分区
输入yes
,清除内置存储和 data 分区
如果你是基于 Android 5.x 的 MIUI,可跳过上面步骤
返回主菜单,选择挂载
,打开MTP 挂载存储
,将 底层、Lineage OS 刷机包、Root 包、GApps、内核包 放在内置存储根目录
开始刷机,一起刷还是分开刷随你选
一切都刷好后,记得在刷最后一个包的完成页面点击清除Dalvik / ART Cache
重启,待进入系统
进入系统后恢复数据,完成
注意:
- 记得备份好手机所有数据,如果不备份数据导致所有数据丢失后果自负。
- 此方法是最简单粗暴的方法,成功性未知,如果担心出现奇葩问题请参考完整版操作。
reflink: https://robwolver.github.io/2018/02/13/lineageos-on-rn3/