admin 管理员组

文章数量: 887021

本文讨论目前刷机现状以及一些原理。谨以此文纪念曾经一起搞机的小伙伴们。

刷机的兴起与盛行

  说实话,刷机风靡手机市场的年代,是最精彩,最值得令人怀念的时代。2010年Google发布Android2.3版本,此时刷机开始逐渐兴起,到Android4.0时达到巅峰,此时刷机非常流行,衍生出了很多第三方工具和ROM。
  大家刷机的目的各不相同,有的是为了体验需要root权限的软件;有的是想卸载出厂自带的软件;有的是嫌弃原厂系统bug太多,运行卡顿;有的是系统老旧想通过刷机升级;有的是手机死机了,开不了机,想通过刷机恢复;甚至有的仅仅是想换个主题、语言、壁纸、铃声等个性化设置。更甚至仅仅就是好玩,没啥具体目的。总结大致下面三点:

1、优化系统、获取Root权限、解决BUG,体验不同的UI系统;
2、手机能开机的情况下增加系统的流畅度、解决卡顿、去除广告、减少内存占用等;
3、解决手机黑屏、变砖、开不了机、忘记密码、进不了系统等相关的问题;

  刷的最多的还是小米的MIUI,那时厂商专注于硬件、而系统软件层面的体验不太关注,当时的小米就是一个另类,它把系统放到了首位,这便是小米的 MIUI。
  “万物基于 MIUI”这句话想必也是当时的真实写照,毕竟 MIUI 是小米的第一款产品,它让很多人了解到了“基于Android深度定制”的概念。区别于原始粗放的安卓系统,MIUI 在系统界面、交互逻辑、功能体验等方面都做了深度优化,比如美化界面和图标,加入全新的 Widget,大胆舍弃二级菜单,重新设计拨号盘、短信、通讯录……这让它变得非常易用,也更符合国人的使用习惯,形成了对其它品牌系统的降维打击。
  刷机圈也曾流传这样一句话:“愿你刷机半生,归来仍是MIUI。”这句话既表达了大家对MIUI系统的肯定,也侧面反映MIUI是“刷机家族”的重要成员。
  (MIUI先于小米手机诞生。在第一代小米手机发布之前,MIUI就已经发布好几个版本了,供手机发烧友刷机。)

  当时用户刷机需求强烈,除了MIUI,许多第三方定制系统如雨后春笋般涌现。机友们耳熟能详的:乐蛙OS、IUNI OS、魔趣、FIUI、CyanogenMod(CM)、点心OS、乐众 OS、百度云 OS、腾讯 OS…
   可见,除了名不见经传的小团队,连鹅厂、百度这样的大企业也想来分一杯羹。足见当时刷机有多么盛行。百度云OS当时还一度跻身前三,与MIUI和乐蛙OS并驾齐驱。
  我记得大概是2014年那会,一加手机就是靠出色的刷机体验,迅速成长为发烧友们最爱的手机品牌。一加也将1代机型视为“刷机小王子”。当时的一加1代手机,可以刷入MIUI、Flyme、原生OS、魔趣OS、云OS、乐蛙OS、锤子Smartisan OS等等,一部手机就能体验到千百种风格。

刷机的没落与终结

  刷机的兴盛,不仅带动第三方ROM的兴起,各种第三方工具也相继涌现:刷机精灵、线刷包、奇兔刷机、刷机大师等等。如今已是人去楼空。
  2015年3月,百度云OS宣布关闭服务,停止更新,公告如图:

2016年12月,CM官网发布声明称,公司将于12月31日停止Cyanogen的所有服务,届时nightly版本也将停止版本迭代,今后的CM系统的开发和升级都将完全停止。

2017年6月,腾讯宣布Tencent OS停止服务,原团队解散,不再提供维护和更新。公告如图:

2019年12月22日,刷机精灵官网宣布关闭,如图:

  线刷宝最近一次更新也已经是2年前了。随着第三方ROM的相继关闭,第三方工具停止更新,刷机时代即将谢幕,会逐渐退出历史舞台。

刷机原理

  目前大部分手机厂商对刷机做了各种限制,有的品牌甚至禁止刷机。提几个名词勾起大家的回忆:BL锁、fastboot、bootloader、recovery、第三方ROM、卡刷、线刷、root、OEM解锁。
   想必很多机友可能已经不清楚每个词汇的意思了。现在的刷机状况是,手机厂商给固件加了BL锁,需要刷机,必须向官方申请解除BL锁,才可以进行下去。也就是说,如果官方不提供解锁服务,你就无法进行刷机。

  很多人搞不清楚fastboot、bootloader和recovery三者之间的关系。认为线刷就是fastboot、卡刷就是recovery。

   recovery,有的人管它叫安全模式,有的人叫工程模式,有的人认为它就是一个恢复出厂设置的功能。 还有人说手机的recovery就好比window电脑的BIOS。网上的解释很多,说的都很抽象:Recovery模式指的是一种可以对安卓机内部的数据或系统进行修改的模式。实际上,recovery是一个微型的操作系统,类似于Windows的win PE,大家都清楚winPE的作用,当系统崩溃时,用winPE来进行修复。recovery也是如此,不过我们用winPE一般是安装在一个U盘上,插到电脑上进行修复,而recovery直接就在手机上。开机时按音量+键和电源键就可以进入(不同手机稍有不同)。

  我们把手机上的存储器大致分为几个区:

  • boot区:包含有Android系统的kernel和ramdisk。如果bootloader选择启动Android系统,则会引导启动此分区的kernel并加载ramdisk,完成内核启动。
  • bootloader区:设备启动后,会先进入bootloader程序,这里会通过判断开机时的按键组合(也会有一些其他判断条件,暂不赘述)选择启动到哪种模式,这里主要有Android系统、recovery模式、fastboot模式等。
  • system区:包含有Android系统的可执行程序、库、系统服务和app等。
  • data分区:用户存储空间。一般新买来的手机此分区几乎是空的,用户安装的app以及用户数据都是存放在此分区中。
  • recovery区:包含recovery系统的kernel和ramdisk。

  我们讲刷入第三方ROM,其实就是把system区擦除重写。recovery分区是平行于system分区的,也就是说,我们的手机其实安装了2个操作系统,一个是我们平时使用的Android,还有一个就是recovery系统。rec系统非常简单,就2、3个清除数据的功能,也可以刷机,但只能刷入官方的ROM。
   fastboot,fastboot才是真正类似于Windows的bios,它与recovery有本质区别。fastboot仅仅是一段程序,或者叫刷机协议。进入fastboot后什么都干不了,只能通过数据线连接电脑,接收来自电脑的指令和数据,然后执行。
   bootloader是引导加载程序,也是一小段程序,开机加电自检就是从这里开始执行,也可以说开机后首先执行的代码就是bootloader。我们说的BL锁就是从这里入手的。既然bootloader是必须执行而且是最先执行的代码,那么我只要把这里锁住,岂不是就没法刷机了。大致流程图如下:

   正常情况下开机,并不会进入fastboot和rec。开机时,在短暂的bootloder阶段,它会监听手机的action,如检测到音量-键和电源键的组合,就会进入fastboot;如检测到音量+键和电源键的组合,才会进入rec模式。
   而我们说的BL锁,就是锁住了进入这两模式的通道,如上图示例。也因为fastboot必须使用数据线,所以也叫线刷。而rec是通过预先下载好的rom包(保存在sd卡中),所以叫它卡刷。
   有人会叫嚣,我不用解BL锁也能刷机,那就是高通9008强刷。9008强刷是高通芯片提供的紧急救助模式,在手机存储器上所有代码均被破坏和删除的情况下,使用9008串口进行烧制分区。但是9008强刷要满足2个基本条件:
      1、能找到QPST专用刷机包(网上查不到就是没有);
      2、手机能进9008端口,还需要专门的工程线。
只要手机厂商不开放9008端口,那也是没用的。
   (补充一点:rom全称Read-Only Memory,只读存储器。但并非只能读不能写。前面我们讲的system区和boot等很重要的系统分区,这些是不允许改写的,所以这些分区进行了“保护”,用户是没有权限进行写入的。我们把这些保护起来的存储区域称之为ROM。这里其实是存在一点误会。)

刷机现状

搞机,是一种态度。

  自2010年算起,刷机历史到现在已经整整12年。曾经刷机的少年们如今有的已为人父母。“搞机”的环境也发生了巨大变化,很多优秀的定制系统变了味道,不少有趣的刷机玩法离我们而去,但依然有小部分群体活跃,他们对原生有着最质朴的情感,大道至简,他们青睐最简单的原生系统。相比于深度定制的安卓,原生系统没有冗余的服务,只有原汁原味的流畅体验,可以说原生系统代表了对技术的纯粹追求。
  目前刷机逐渐没落,主要原因还是需求减少。有人说没有稳定的收入来源是刷机时代终结的重要原因。第三方ROM的盈利方式单一且不稳定,在国内知识产权不是特别完善的时期,ROM开发者的被动收入来源于捐赠。不仅仅是安卓的刷机文化衰退,苹果的“越狱文化”也开始销声匿迹。

但归根结底还是用户需求没了。
  (一)在十年前那个时代,一些出厂预装的软件无法删除,唯有通过刷机的方式强制删除。现在国家法律规定集成的内置应用必须可卸载,导致第三方刷机需求锐减。
  (二)Android系统和Android手机发展初期,厂商并不能完全兼顾硬件和软件,都是摸着石头过河,面对着当时如毛坯房般的Android系统,有的直接照搬原系统,有的在基础上修修补补,导致系统臃肿、界面难看、Bug频发,而刷机正好让这些问题迎刃而解。随着时间推移,手机厂商的系统日臻完善,无论是功能还是UI,都比第三方ROM更加完善,致使用户刷机需求断崖式锐减。

  (三)手机厂商对刷机持反对态度,BL锁、secboot等安全机制使得刷机十分困难。进一步导致刷机没落。
  (四)当年刷机的搞机小子,如今长大成人,没功夫也没兴趣去使劲折腾手机了。换句话说:手机是爱好,但不是生活的全部,当年那批发烧友也许如今依旧在关注手机行业,但已经没有折腾的心和精力。
  目前就是小米和一加手机大部分支持解BL锁,可以进行刷机。其它品牌像oppo、vivo、华为等等,大部分不行。以小米为例:刷机步骤分三步:
  第一步:向官网申请解BL锁。链接:https://www.miui/unlock/index.html。下载好官方的解锁工具后,
     1.进入“设置 -> 开发者选项 -> 设备解锁状态”中绑定账号和设备(需要满168小时,所以建议提前绑定);
     2.手动进入Bootloader模式(关机后,同时按住开机键和音量下键);
    3.通过USB连接手机,在电脑软件上点击 “解锁”按钮;
  第二步:解锁后刷入第三方recovery,目前推荐TWRP和橙狐。刷入工具推荐秋之盒。TWRP地址:https://twrp.me.
橙狐rec下载地址:https://orangefox.download/zh-CN。如图:

选择自己对应机型的rec下载即可。
  下载好以后是一个后缀为img的文件,使用秋之盒工具刷入。秋之盒官网:https://www.atmb.top/
  第三步:刷入第三方rec后,就可以下载第三方ROM包和root包了。大家可以在酷安或者一些搞机群里面下载。注意机型一定要对应。root直接面具卡刷包magisk就行,下载地址https://magiskcn/magisk-download。下载安装一般就ok了。

最后的话

   前面讲了刷机开始到目前的状况,以及刷机的原理和刷机的步骤。虽然曾经一起搞机的小伙伴如今已经没有了那颗爱捣腾的心,且刷机圈也逐渐没落,但刷机这一现象还会持续,尽管是非常非常小的一群人。刷机文化,不仅仅是一个产品,而是曾经辉煌过的时光,就像我们无法忘却诺基亚一样,它会永远留存在我们的历史长河。
   谨以此文纪念我们消逝的青春以及一起搞机的快乐时光。

更多内容敬请关注“极客随想”:(公众号)

本文标签: 刷机 步骤 现状 原理 方法