Android数据分区大小

标签 android

我正在从源代码构建 Android,并将其安装在自定义设备上,其中 eMMC 用户数据分区可能是几种不同大小之一。
如何只构建一次 userdata.img,以便它适合所有设备?
fstab.whatever 和 BoardConfig.mk:BOARD_USERDATAIMAGE_PARTITION_SIZE 中所需的设置是什么?

动机,为什么我认为这是可能的:
Nexus 4 设备有两个版本:8GB 或 16GB 存储空间。
但是,Nexus 设备的工厂镜像 ( https://developers.google.com/android/nexus/images ) 不会考虑这一点 - 只有一个 Android 镜像。这让我相信,数据分区会自动扩展到存储设备的末尾。

谁能透露一下这是如何实现的?
提前致谢!

最佳答案

看起来工作原理如下:
Userdata.img 分区镜像大小适合可能存在的最小物理分区大小(Nexus 4 上约为 6 GB,Nexus 5 上约为 12 GB)。因此,将 userdata.img 刷入 16 GB-Nexus 4 设备后,我们发现存储容量有所下降。
要在所有用户数据分区上跨越(ext-4)文件系统,应执行“恢复出厂设置”。
这是有效的,因为恢复出厂设置相当于重新格式化用户数据分区。注意,重新格式化而不是删除全部内容。从头开始创建 (ext-4) 文件系统将跨越所有物理可用卷容量。
总而言之,它本身显然没有魔法。

引用:
http://forum.xda-developers.com/google-nexus-5/help/32-gb-nexus-5-12-55-gb-storage-space-t2938406

关于Android数据分区大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28571064/

相关文章:

java - Android 使用自定义构造函数重新创建 fragment

java - on销毁和清理

android - 我为什么要使用绑定(bind)服务?

android - Gradle 项目同步失败

php - 从android到php再到mysql

android - 如何将Android SQLite数据库存储在sdcard中

java - 检测连接是否失败 - Java Android

Java 和 Android : Accessing a function using Classname vs this

java - 获取信号强度

java - 后台线程完成后返回 Android Activity