Android 4.4虚拟设备内部存储不会调整大小

时间:2013-12-14 04:15:15

标签: android android-emulator emulation avd internal-storage

使用AVD Manager创建新的Android 4.4虚拟设备时,我无法让内部存储空间大于200MB。

512MB是我想设置的内部存储空间。

我试过了:

  • 将AVD Manager中设备的内部存储设置为512MB。
  • 在Eclipse项目Debug Configurations中,在Target选项卡下,将Additional Emulator Command Line Options设置为-partition-size 512。
  • 在Eclipse首选项中,在Android下,我将默认模拟器选项设置为-partition-size 512。
  • 在(用户)/。android / avd /(设备).avd / config.ini下编辑我的虚拟设备的配置文件
    • 然后将disk.dataPartition.size设置为disk.dataPartition.size = 512M
    • 还尝试将其设置为disk.dataPartition.size = 512MB
    • 还尝试将其设置为data.dataPartition.size = 512M

在ARM和Intel Atom x86 CPU上都会发生这种情况。

现在当我切换到Android 3.0(ARM)时,我可以简单地使用AVD Manager来调整它的内容。 Android 4.4有问题吗?我错过了什么吗?或者可能的解决方法?

10 个答案:

答案 0 :(得分:54)

现在仿真器文件系统是ext4,我能够使用标准Linux工具重新调整userdata.img的大小。

# Navigate to AVD
cd ~/.android/avd/Nexus5
# Delete old image
rm userdata-qemu.*
# Re-size the image
resize2fs userdata.img 512M
# Start the emulator and enjoy
emulator @Nexus5

修改 我也可以直接调整userdata-qemu.img的大小,但我必须先运行e2fsck

 e2fsck -f userdata-qemu.img
 resize2fs userdata-qemu.img 512M

答案 1 :(得分:29)

即使上面的建议也可能导致Android模拟器挂起启动徽标。原因是resize2fs执行的修改通常是正确的,但被android认为是破坏的fs,并阻止它以rw模式挂载,这会挂起启动过程。

Examening boot logs显示如下内容:

EXT4-fs error (device mtdblock1): ext4_mb_generate_buddy:741: group 2, 32366 clusters in bitmap, 32370 in gd

事件e2fsck没有为Android修复它并解决它我用tune2fs来改变android应该如何继续挂载破坏的fs。

tune2fs -e continue userdata-qemu.img

答案 2 :(得分:5)

有人13,这绝对是Target中的一个Bug:“Android 4.4.2 - API Level 19”

我遇到同样的问题 - 无法在Android SDK的模拟器中更改设备内部存储的大小(即使在config.ini中使用“disk.dataPartition.size = xxxM”或使用命令提示符也是如此)在Android SDK的模拟器中使用Android 4.4.2时参数“-partition-size xxx”。

唯一的方法是在使用Target时设置自定义大小:Android 3.0 - API Level 11。

我的硬件:Windows 7 Ultimate SP1,RAM 4GB; Core Duo 2.28GHz; GT630

答案 3 :(得分:4)

如果您在2016年仍然遇到此问题,请尝试从AVD管理器中删除图像,然后重新添加模拟器。

无论我做什么,似乎都无法调整模拟器的大小,但是当我删除图像然后使用1GB内部存储重新创建图像时,它仍然有效。

答案 4 :(得分:1)

我能够创建这个虚拟设备,可能会更改您的设备类型或什么?

enter image description here

答案 5 :(得分:1)

为了建立@ Frohnzie的答案,resize2fs和e2fsck现已包含在SDK Tools中(您可能需要更新SDK工具才能看到它们),因此您不需要单独安装它们。它们位于 yourAndroidSDKFolder / tools / bin(Windows,Linux)或 yourAndroidSDKFolder / tools / bin64(Mac,Linux)下。

答案 6 :(得分:0)

Assaf G。答案很好。但我注意到在第一个用户中的以下链接中,用户可以使用内部存储 Emulator创建500MB。但他得到了一些exceptions但与内部存储无关。 在另一个能够使用内部内存 emulator创建4096MB的链接用户。但他正面临速度问题。所以我认为您必须尝试使用​​第一个链接中提供的规范

1。Android 4.4 Emulator

2。android emulator forever launching

答案 7 :(得分:0)

对我而言,当我在Android Studio中意外选择AOSP 4.4.2模拟器时,这是一个问题。 Google Inc. x86模拟器(如下所示)似乎没有此错误。

enter image description here

答案 8 :(得分:0)

删除/data/data/com.google.android.gms/files将发布200M +

答案 9 :(得分:0)

在这里,似乎有一些问题,在较旧的Android工具低于22版本,这不起作用。我将android工具升级到23,这开始工作了。

我的配置是 API等级21 CPU:Intel X86 操作系统:Ubuntu Linux