动态分区刷GSI(通用镜像)的正确姿势 |
您所在的位置:网站首页 › 动态分区可以装系统吗 › 动态分区刷GSI(通用镜像)的正确姿势 |
一、通用镜像(GSI)和动态分区通用镜像(GSI) Google在Android10开始引入了动态分区(Dynamic Partitions) Goole介绍:WhatIsDSU 步骤1.启用 DSU 功能标志安卓10正式版及以上,可以在开发者选项中Feature flags > settings_dynamic_system 中启用该功能。国内系统UI大多隐藏了,可以尝试用下面的adb 命令开启: 1adb shell setprop persist.sys.fflag.override.settings_dynamic_system true 步骤2.安装前的准备通过DSU安装的GSI需要是可直接刷写的raw格式镜像,在开始前先检查你的镜像是不是raw格式linux或者mac系统可以用file system.img命令查看 12$ file system.img$ system.img: Linux rev 1.0 ext2 filesystem data, UUID=91180515-3f1c-501d-888d-6f81f7ca3301 (extents) (large files) (huge files)若返回值是这样的就是raw格式若为稀疏格式(simg),可以使用以下命令把system镜像转为raw格式镜像 1$ simg2img system.img system_raw.img 一般gsi镜像都是simg格式,先检查转换 步骤3.将镜像打包为gz格式1gzip -c system_raw.img > system_raw.gz*也可以直接用压缩工具压缩为gzip压缩包 步骤4.用adb推到手机内置储存1adb push system_raw.gz /storage/emulated/0/Download/ 步骤5.安装动态系统更新 下面的命令要全部一起复制执行 123456adb shell am start-activity \ -n com.android.dynsystem/com.android.dynsystem.VerificationActivity \ -a android.os.image.action.START_INSTALL \ -d file:///storage/emulated/0/Download/system_raw.gz \ --el KEY_SYSTEM_SIZE $(du -b system_raw.img|cut -f1) \ --el KEY_USERDATA_SIZE 8589934592这里第五行的$(du -b system_raw.img|cut -f1)可直接用 system_raw.img 的大小代替,不然用windows刷会报错比如我的个system_raw.img的大小为2370265088 命令就改为 123456adb shell am start-activity \ -n com.android.dynsystem/com.android.dynsystem.VerificationActivity \ -a android.os.image.action.START_INSTALL \ -d file:///storage/emulated/0/Download/system_raw.gz \ --el KEY_SYSTEM_SIZE 2370265088 \ --el KEY_USERDATA_SIZE 2370265088然后你就会看到状态栏有正在安装的动态更新的提示,安装完重启进入第二个系统 小米10出厂安卓10,必然是支持DSU的 你可以用此方法尝试安装phh的aosp gsi 方法2.通过fastbootd刷入GSI镜像(推荐)fastbootd——用户空间中的fastboot注意,fastbootd和fastboot是两个不同的模式 vbmeta.img一般包含会随gsi镜像一起发布 步骤1.重启到fastboot关机状态同时按电源+音量减 或者开启adb调试后adb reboot bootloader 步骤2.刷入vbmeta.img停用AVB验证1fastboot --disable-verification flash vbmeta vbmeta.img 步骤3.还原MIUI官方recovery目的是可以启动fastbootd或者使用twrp里的用户空间fastboot也可以,注意如果twrp有这个功能可以不用刷回miui recovery 1fastboot flash recovery recovery.img 步骤4.在fastboot模式下进入fastbootd模式1fastboot reboot fastboot一定是要通过fastboot命令运行这句,才能启动到fastbootd模式 到这里如果卡在waiting for any devices就是没有安装小米usb驱动,设备管理器会识别你的手机,右键更新驱动程序。 PS:小米USB驱动 步骤5.刷入system镜像安装好驱动,进入fastbootd之后,这时候fastboot命令已经可以识别system分区了 1fastboot flash system system.img 步骤6.清楚数据*会格式化data,防止加密(注意提前备份) 1fastboot -w 步骤7.重启系统1fastboot reboot |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |