红米 Note3 (kenzo)刷入Lineage OS 的过程

详细的教程请看 Install LineageOS on kenzo

本文做一些额外的补充

0 刷机之前的准备工作

  • 如果登陆了 Google 账户的,先删除本机的 Google 账户(非常重要,否则开机向导无法跳过,人在墙外或具有科学上网的网络则可以忽略)
  • 如果有使用 手机验证器(Authenticator)的,请注意:"卸載驗證器、恢復手機前請務必到本頁面關閉二級驗證"。我把我的二级验证关掉了再刷机的。
  • 备份重要数据

1 更新 Recovery

第一步就遇到困难,fastboot 刷新的 twrp 提示 FAILED. 查了一下原因,竟然是小米的锁的问题,也就是说,即使已经解锁过一次,如果见到这样的提示,那么就重新下载小米的解锁工具,只需要重新再点击一下解锁即可。

2 安装 Lineage OS

将下载的 Lineagexxx.zip 放入 sdcard,然后进入 recovery,首先清除数据,包括 System, Data, Cache and Davik cache。因为我是从 CM 系统更新到 Lineage,所以需要把这些统统抹去。然后再回去选择安装,选中放入的压缩包,滑动确认刷入。然后我就遇到问题了,提示我“ZIP 签名校验不正确”(zip signature verification failed),我尝试不选择令人讨厌的 ZIP 校验,结果还是失败,报错就不一样了,信息如下:

xiaomi.verify.modem() failed to read current MODEM version: -2

Update process ended with ERROR: 7

关于这个问题的解释见这个帖子。 主要原因为:

The blobs used by system are taken from MIUI Global DEV ROM expect the firmware to be from the same release too. Mismatch in that can cause issues.

那么有无解决方案呢,有网友给出的解决方案是,先刷成某个 MIUI 最新的版本,然后再刷 Lineage 就好了。这个办法有点烦,主要是 MIUI 的ROM 太大了,lineage 的也就五百来兆,小米的动不动八九百兆。我自己找到了这个解决方案:Status 7 Error with CWM or TWRP Recovery on Rooted Android!。大体的思路和这个是一样的,稍微有点小改动,解压后的 updater-script 开头如下:

assert(getprop("ro.product.device") == "kate" || getprop("ro.build.product") == "kate" || getprop("ro.product.device") == "kenzo" || getprop("ro.build.product") == "kenzo" || abort("E3004: This package is for device: kate,kenzo; this device is " + getprop("ro.product.device") + "."););
assert(xiaomi.verify_modem("MSM8976.LA.1.0.c3-30041-STD.PROD-1.77504.1.83742.1") == "1");

考虑到我刷机時的报错信息为 xiaomi.verify.modem() 错误,所以我将第二行的 assert 给删除了,然后重新压缩并再次刷入,记得不要选择 zip 签名校验,那么就成功刷入 lineage os 了,记得将 Gapps 的包也一起刷入再开机,已经开机了,那么在后面刷入 Gapps 的时候记得双清再开机。

3 跳过开机向导的网络连接(Fxxk GFW)

刷好 Gapps 以后进入开机向导,貌似连接网络那一步还是没有提供可以跳过的选项。解决方案如下:首先拔出 SIM 卡,然后在选择网络的界面把上下左右四个边角點一通,就可以跳过了。然后就是成功进入主界面了,刷机完成。

红米 Note3 (kenzo)刷入 Lineage OS的更多相关文章

  1. 为红米Note 5 Pro编译Lineage OS 15.1的各种坑

    安装了ubuntu虚拟机,直接上网repo sync,网速特别慢,中间断了好多次,记得是3天吧,总算是下载成功了.中途还在淘宝上买过付费的VPN代理软件,有时候会打开代理来尝试,也是不太稳定.好歹第1 ...

  2. 红米手机4A怎么样刷入开发版获得ROOT权限

    小米的手机或平板不同手机型号一般情况官方都提供两个不同系统,可分为稳定版和开发版,稳定版没有提供root权限管理,开发版中就支持了root权限,在很多工作的时候我们需要使用的一些功能强大的app,都需 ...

  3. 红米K20PRO解锁Bootloader权限并刷入recovery

    手机里反正没什么东西了,聊天记录啊好像也没很重要得了,索性全部清除,刷机玩玩. 把稳定版刷成第三方开发版,这样又有时间去折腾root权限,面具和xposed的各种插件了,嘿嘿. 解锁小米手机 我的账号 ...

  4. 红米note3的wifi断流或假死

    红米note3的wifi断流/假死 日常使用note3的时,比如长时间浏览网页,点击一个链接会卡住不动,在等待十几秒之后才恢复.第一反应是不是网络不好?但是这种情况常常出现之后,对比其他的手机,比如价 ...

  5. nexus 10 救砖 安装lineage OS 15 并 root

    因为平板自带的谷歌应用太烦人了,想root之后卸载它们. 一.root nexus 10 官方系统 1.把img拷贝到platform-tools(Android官网下载)文件夹 2.platform ...

  6. 【MySQL】redo log --- 刷入磁盘过程

    1.redo log基本概念 redo log的相关概念这里就不再过多阐述,网上有非常多的好的资料,可以看下缥缈大神的文章:https://www.cnblogs.com/cuisi/p/652507 ...

  7. MIUI7 系统应用精简(米5、红米note3)

    1.由于安装的部分应用在root后无法使用,所以自己一直不能使用MIUI的开发版本. 2.前段时间米5升级MIUI8,实在是用着不咋地,耗电,王者还掉帧,于是降级miui7 3.被逼走上了刷机路. 1 ...

  8. 红米除线刷的另外一种救砖方法fastboot

    原文来自:https://jingyan.baidu.com/article/48a42057e945bca9242504d7.html , 按照它操做了一下,虽然没有救活我的红米1,但是让我更好的了 ...

  9. 〖Android〗Nexus 7 flo (razor) 刷入Recovery/CM-11.0后卡在开机动画的解决方法

    操作日志: 起因:Nexus 7 flo 华硕平板,刷了一个CWM Recovery之后变成了砖机: 尝试1:使用CWM Recovery清除数据,开机失败 尝试2:刷入CM 11 Snapshot的 ...

随机推荐

  1. TCP网络编程-----客户端请求连接服务器、向服务器发数据、从服务器接收数据、关闭连接

    SOCKET m_sockClient; unsigned short portNum; ------------------------------------------------------- ...

  2. Spring入门之IOC

    IOC/DI: Spring最核心的灵魂,IOC/DI(控制反转/依赖注入)!,这里一定要理解他,理解这个思想.我会细说什么是IOC/DI.他的思想是什么.它带来了那些好处. 进入正题,先说说什么是i ...

  3. Hadoop 2.6.0 完全分布式平台搭建

    一.准备软件环境: hadoop-2.6.0.tar.gz CentOS release 6.5 jdk-7u67-linux-x64.tar.gz 网络配置: master1            ...

  4. XCode8中的sizeClass设置

    xcode8出来很久了,xcode9都要出来了,项目中由于一直没遇到用到适配屏幕的情况,所以一直也就忽略了这个知识点.今天忽然想起来,就抱着试一试的态度打开了xcode,我去~就我现在了解而言,屏幕大 ...

  5. 学习总结:工程管理与makefile

    工程管理与makefile 一.为什么需要makefile和make 一个工程中的源文件可能很多,按照类型.功能.模块分别放在若干个目录中,为了有效地管理软件工程,更高效地编译整个工程,需要用到mak ...

  6. 简单的基于hash和hashchange的前端路由

    hash定义 hash这个玩意是地址栏上#及后面部分,代表网页中的一个位置,#后面部分为位置标识符.页面打开后,会自动滚动到指定位置处. 位置标识符 ,一是使用锚点,比如<a name=&quo ...

  7. 聊一聊Javasript继承

      前前后后已经快写了2年左右javaScript,刚开始只是简单用于一些表单验证和操作dom节点,并没有深入的使用,随着渐渐的深入,开始不想去写重复的代码(懒的开始),从而写简单的继承,封装,抽象等 ...

  8. JavaScript 数组对象的去重

    JavaScript数组去重 1.原型去重法.通过prototype找到数组的源性对象Array,在数组的原型上添加unique()方法.需要使用的时候使用 点 " . " 进行连 ...

  9. deeplearning.ai 卷积神经网络 Week 3 目标检测 听课笔记

    本周的主题是对象检测(object detection):不但需要检测出物体(image classification),还要能定位出在图片的具体位置(classification with loca ...

  10. js面向对象学习笔记(五):tab切换

    重点是this指向问题 <style> .hide{display: none;} #box div,#box1 div{display: none;} .hover{background ...