什么是底包?
我们平时刷第三方 ROM,实际上只是刷了 boot 和 system 两个分区(俗称内核和系统)。对于大多数手机来说,除了这两个分区,还包括了大家俗称的基带、Modem、TrustZone 等必不可少的分区。
这些分区的版本是需要和系统或内核里相关的驱动版本一致才可以正常工作。比方说,假如系统里的驱动更新了,而 TrustZone 没有更新,那么指纹传感器可能会不正常;Modem 版本不对,可能会没有网络。
既然要严格对应,那为什么刷机包不「顺便」把这些分区也更新了呢?原因有三点:
- 由于版权问题,这些分区的镜像是不可以包含在我们的刷机包里的。这就需要单独抽离出来做成卡刷包发布,在刷入系统之前先单独刷一个卡刷包来更新这些分区。
- 只有设备制造商更新原厂ROM并且第三方ROM的设备维护者是根据最新原厂ROM做适配时才需要更新底包,所以没有必要每次刷机都重复刷入底包。
- 包含底包的刷机包文件大小更大,无形中增加了我们的存储成本和机油们的下载成本。
不更新底包会怎样?
- 在魔趣中心,我们加入了独有的安全判断。底包版本不对,会提示并阻止你升级系统,防止系统更新后出现上面所说的工作不正常的情况。
- 如果是手动卡刷,系统卡刷包本身也会判断基带版本。如果版本不对,会阻止更新(并引发「错误7」)
如何刷底包?
- 将下载好的底包放到你的内置存储里
- 在魔趣中心里下载好新版本的系统更新(全量或者增量都可以)
- 重启进入 TWRP
- 刷入底包
- 刷入系统更新
- 重启,完成