-
Notifications
You must be signed in to change notification settings - Fork 4
10.刷入GSI(A13)以及优化养老
阅读本章节的前情提要:
请注意,作者建议你先阅读完前情提要和本文章再考虑是否动手实践。
前文说过,EMUI 9虽然是System As Root分区格式,但是也是A-Only的分区。
至于为什么会存在如此诡异而又矛盾的状态。这就要问华为是如何魔改的了。
华为P10的EMUI 9的System分区大约是3725MB左右。但事实上,可用空间比这个小的多。
面对Android 12以后的GSI是完全不够看的。
虽然有好心的作者制作silm(小分区版本)的GSI,但是为了还能刷别的刷机包,例如Google套件。
还是有必要扩展system分区大小的。
那么如何扩展呢?使用parted工具。
所需要的工具:
- Parted ARM版本
- TWRP
- 电脑
操作步骤(EMMC专用,也就是三等人版本):
傻瓜式步骤: - 下载好Parted,手机重启到TWRP。
- 使用ADB传输你的Parted文件:
adb push "parted" "/sbin/"
注意你的路径,命令格式是
adb push "你的parted文件位置" "/sbin/"
- 使用TWRP的文件管理,进入 /sbin/ 目录下,找到parted,对其授予755权限。
- 接下来输入如下命令(#后面是注释,不要复制!!):
adb shell # 进入手机shell界面
parted /dev/block/mmcblk0 # 使用parted分区区块mmcblk0
p # 查看区块mmcblk0下的所有分区
然后你会看到一排排信息,这几个是主要的:
59 2374MB 6099MB 3725MB ext4 system_a msftdata
60 6099MB 6233MB 134MB reserved5 msftdata
61 6233MB 125GB 119GB userdata msftdata
如果你观察的很仔细,可以看到system_a分区大小3725MB,是由2374MB开始到6099MB决定的。
也就是说,是6099MB减去2374MB得到的。
那么接下来好办了。我可以从userdata划出一部分给system_a。
注意!userdata的125GB是因为我手机是128GB版本,你需要依照实际你的手机的userdata分区结束大小填写!!!
rm 59 # 删除分区59(system_a)
rm 60 # 删除分区60(reserved5)
rm 61 # 删除分区61(userdata)
mkpart system_a ext4 2374MB 10566MB # 创建分区system_a,大小是8192MB,从2374MB开始到10566MB结束。
mkpart reserved5 10566MB 10700MB # 创建分区reserved5,大小不变,从10566MB开始到10700MB结束。
mkpart userdata 10700MB 125GB # 创建分区userdata,大小缩减,因为划出一部分给了system_a,从10700MB开始到125GB结束。
期间会提示分区正在活动之类的,请填写Ignore。
不然改动会失效。
5. 关闭shell界面,在TWRP里选怎重启手机进TWRP(recovery)。
6. 清除system分区,格式化DATA分区。
7. 重启进fastboot,刷入你想要的GSI即可。
使用 huawei-creator 去优化GSI。
在Linux环境下,把GSI拷贝进huawei-creator的根目录。
按照huawei-creator的使用教程选择合适的脚本。
例如你的是EMUI9系统,想要刷的GSI是安卓13,那就使用 run-huawei-emui9-ab-a13.sh。
具体的使用说明:READM_CN
这样能修复不少bug,以及优化一定的体验。