目的:为了尽可能给用户保留最大使用空间,遂修改userdata分区大小为实际flash除掉系统外的最大值。
1. 找台设备看产品里userdata分区实际的大小
adb root
adb shell
ls -al /dev/block/bootdevice/by-name/userdata (看userdata挂载位置,我的是sda8)
cat /proc/partitions | grep sda8 (看sda8分区的实际大小)
2. 计算userdata配置大小
上图可见我的产品userdata分区大小为112297932 kb,即 109665.9 Mb,一般给系统预留至少100M,这里设置为109500M。
3.修改生成的userdata镜像文件的大小
路径:code_root/device/qcom/msm8998/BoardConfig.mk
BOARD_USERDATAIMAGE_PARTITION_SIZE := 114819072000 (单位:bit)
109500*1024*1024=114819072000
4. 修改烧录时,分区文件大小
路径:code_root/non-hlos/common/config/ufs/partition.xml
<partition label="userdata" size_in_kb="112128000" type="*******(此处省略)" bootable="false" readonly="false" filename="userdata.img" sparse="true"/> (单位:kb)