[Android]更换EMMC后,userdata容量为何不正确

 时间:2024-10-15 07:53:11

1、在Android最新的代码中,分区表partition.xml里面定义了宏:GRO掳姗浚瑙W_LAST_PARTITION_TO_FILL_DISK=true. 这个宏的作用就是:动态器皆阄诟分配data分区的大小;就是说EMMC的总容量减去其它分区的容量,剩下的都是data分区的。所以分区的大小不用修改,会自动适应。这一点可以通过adb shell -》cat /proc/partitions 看到类似如下图的内容,其中最大的分区mmcblk0p40就是data分区了。(这里的单位是KB)

[Android]更换EMMC后,userdata容量为何不正确

2、那么既然data分区的实际大小没问题,为限鬃鹣哺什么手机中看到的容量不对呢?这就需要提到文件系统的概念了,因为每次烧录手机的时候,是将data.img烧录到分区中,所以分区的文件系统中的容量信息都是包含在data.img中了。这个容量是通过文件/device/platform/BoardConfig.mk中的参数来定义的:BOARD_USERDATAIMAGE_PARTITION_SIZE := 1860632576 (单位是Byte)

3、所以,解决方法很简单,就是将BOARD_USERDATAIMAGE_PARTITION_SIZE 的值设置为我们在/proc/partitions 中看到的分区实际大小,也就是12460032(KB)x1024(Byte/KB)=12759072768(Byte)

4、注意1:其实在容量显示不对的状态下,我们对手机执行下恢复出厂设置也会变为正确的容量的。因为这个操作会重新根据分区大小对data分区进行格式化操作,不再以data.img中的容量为准了。

5、注意2:如果直接设置成分区实际容量无法启动的话,不妨设置一个比分区容量小10MB的值,因为有时文件系统需要一些空间才能启动。

  • 自由幻想手游压级有什么好处
  • 好看的手机壁纸哪里有
  • 八核S5P6818开发板荣品RP6818功能验证与使用
  • 如何查看iphone手机或者iOS设备的UDID是多少
  • 婚姻小秘书:[5]精神和肉体出轨该原谅哪个?
  • 热门搜索
    清徐旅游 旅游政策法规 哈尔滨旅游资讯网 吉安旅游景点大全 云南河口旅游攻略 上海旅游酒店 旅游房地产 旅游点评 温州短途旅游 香港旅游购物