184

我有时(不经常)在我的一个项目中得到这个,只有几节课
Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE

如何增加模拟器的存储空间?

4

22 回答 22

149

在 Android Studio 上

打开 AVD 管理器。

在此处输入图像描述

单击编辑图标以编辑 AVD。

在此处输入图像描述

单击显示高级设置。

在此处输入图像描述

根据需要更改内部存储、内存、SD 卡大小。单击完成。

在此处输入图像描述

单击是确认弹出窗口。

在此处输入图像描述

擦除 AVD 上的数据并单击是确认弹出窗口。

在此处输入图像描述

重要提示:增加大小后,如果它没有自动要求您擦除数据,您必须通过打开 AVD 的下拉菜单并选择擦除数据来手动进行。

在此处输入图像描述

现在启动并使用您的模拟器,增加存储空间。

于 2016-03-06T14:25:12.407 回答
136

更新

在我写这篇文章的时候,这个答案已经有将近八年的历史了,而且已经过时了大约五年。但它仍然是(在我写这篇文章时)“接受”的答案,因为它在被问到时回答了这个问题。

可以在此处找到适用于较新 Android Studio 工具的较新答案:https ://stackoverflow.com/a/35828035/62 - 这是一个很好的屏幕截图答案。如果您使用的是 Android Studio,请忽略下面的 Eclipse 答案。

基于 Eclipse 的原始答案

我正在寻找这个问题的答案,对上述答案不满意。但后来我找到了答案,所以在这里供将来参考:

总结(和澄清),在 Eclipse 中,转到“调试配置”。您可以在“调试”图标下的下拉菜单中找到它。选择“目标”,然后选择要启动的首选模拟器目标。然后在“其他模拟器命令行选项”下添加:

-分区大小 1024

然后关闭模拟器(并删除所有设备),并单击调试图标,这将启动您选择的首选模拟器。这很重要:Eclipse 需要启动调试器,而不是 AVD。

这解决了我的问题。

于 2010-10-15T20:33:47.273 回答
47

将以下内容添加到 avd config.ini

disk.dataPartition.size=1024MB

让我知道这是否也适合您。

我在行中添加添加数据分区大小配​​置
增加 AVD 存储空间的屏幕截图

于 2011-12-16T13:57:01.887 回答
23

运行 AVD 管理器

选择您的 AVD 并单击“详细信息...”按钮。

在我的情况下,AVD Manager 将磁盘大小设置为

disk.dataPartition.size=4000M

尽管指定了数字,但此无效值,磁盘大约为 500MB。

通过“AVD 详细信息”中的路径转到 AVR 的文件夹。

在 config.ini 中将其编辑为

disk.dataPartition.size=4000MB

并删除所有 .img 文件。

于 2017-11-22T11:37:11.383 回答
10

我正在安装一个apk:

adb install /home/me/jones_android-arm.apk

我收到一条错误消息告诉我

/data/local/tmp/jones_android-arm.apk

太大了。使用来自 r15 和 ADT 15 的 sdk 工具,我能够使用 AVD 管理器来操作我现有的模拟器的一些设置:

Window-> AVD Manager -> (select you virtual machine) -> Edit

然后转到“皮肤:”下方的硬件属性窗口,我可以使用硬件进行选择:新建按钮“分区的理想大小”。但是,我无法将值设置为“0”以外的值。毫不畏惧,我去了我的 ${HOME}/.android/avd 目录有一个“MyVm.avd”目录。进入那个目录,我发现了一个“config.ini”文件。有条目:

disk.dataPartition.size=0

我将其设置为:

disk.dataPartition.size=1024

.. 然后回到 AVD 管理器,选择 MyVm,选择“开始”,选择擦除用户数据以赢得下面的对话框,并且能够运行和安装。

于 2011-11-09T23:33:28.507 回答
9

只需通过命令行启动模拟器,如下所示:

emulator -avd <your avd name> -partition-size 1024 -wipe-data
于 2012-04-02T06:27:40.320 回答
6

avd 管理器有一个选项“系统分区的理想大小”,尝试将其设置为 1024MB,或使用执行相同操作的命令行启动选项。

仅供参考,我只遇到了 4.0 模拟器图像的这个问题。

于 2011-10-26T13:06:15.917 回答
4

这个问题来自 android 1.5 .. 尝试 2.0 或 2.1 或 2.2

于 2010-02-22T10:01:13.983 回答
4

你需要增加模拟器的虚拟内存

如何增加模拟器的虚拟内存

模拟器 -avd "模拟器名称" -partition-size 2024

然后尝试安装你的apk

于 2012-11-29T07:09:01.963 回答
4

要在 Linux 中调整 Android 模拟器的存储大小:

1)安装qemu

2)找到包含虚拟机的img文件的目录。像 ~/.android/avd/.avd 和 cd 之类的东西。

3) 调整 ext4 图像的大小:即从 500Mb 增长到 4Gb 执行

qemu-img resize userdata.img +3.5GB
qemu-img resize userdata-qemu.img +3.5GB

4)增长文件系统:

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

5) 对于 sd 卡镜像,可选:救援数据:

mkdir 1
mount -o loop sdcard.img 1
cp -a 1 2
umount 1

6) 将图像大小从 100Mb 调整为 Gb:

qemu-img resize sdcard.img +3.9GB

7)重新生成文件系统:

mkfs.vfat sdcard.img

8) 可选:恢复旧数据:

mount -o loop sdcard.img 1
cp -a 2/* 1
mount -o loop sdcard.img 1 
于 2016-02-12T13:19:50.697 回答
3
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.junkfoodian"
android:installLocation="preferExternal"   // this line can work for  Installation error:            //                                             // INSTALL_FAILED_INSUFFICIENT_STORAGE
于 2011-12-31T06:11:17.253 回答
2

更新您在 AVD Manager 中的设置并通过启用“擦除用户数据”启动设备。这对我有用。

于 2014-12-19T09:44:52.877 回答
2

我是初学者,但在玩“Hello Grid View”时遇到了这个问题。我试图使用我自己的照片,这些照片的文件大小都非常大。

快速解决方法是减少照片数量,从而减小 APK 文件的大小。

但是,我想我对其他点击此线程的人的后续问题是:如何将 JPG 和 MP3 等大文件附加到应用程序并确保它们保存在 SD 卡上,以便 APK 保持小?

于 2010-02-20T13:00:42.400 回答
1

我想您应该使用“emulator -wipe-data -avd YourAvdName”重新启动模拟器,或者如果您使用的是 Eclipse,请在运行配置中检查“Wipe User Data”。

我现在面临同样的问题。

于 2010-04-28T13:43:38.493 回答
1

如果您有 M1 Mac 和 Android Emulator 的预览版,那么您需要转到/Applications/Android Emulator.app/Contents/MacOS/api30-gphone-arm64-v8a/config.ini(作为示例)并将disk.dataPartition.size属性更改为您想要的大小。

像这样的东西: 在此处输入图像描述

参考在GitHub repo中。

此致。

于 2021-11-05T22:13:50.013 回答
0

我唯一一次看到这种情况发生是在主机文件系统基本上空间不足的时候。存储 VM 文件系统的文件系统上是否有很多可用空间?

于 2010-02-10T20:41:55.600 回答
0

这显然不是一个合适的答案,但它是一个小提示。

如果您想在您的应用程序中使用静态文件。您应该将它们作为资源或资产。但是,如果你有内存问题,比如让你的 APK 很小,那么你需要改变你的应用程序设计,这样,

而不是将它们作为资源,在运行您的应用程序(安装后)时,您可以从 SD 卡中获取文件(当然是不同的文件,因为用户可能不会保留您需要的文件)。对于这个 U 可以使用 ContentResolver 来获取用户选择的音频、图像文件。

有了这个,您可以为用户提供另一个功能,例如他可以根据自己的选择将音频/图像文件加载到应用程序中。

于 2010-02-25T03:00:42.343 回答
0

您可以在eclipse平台的AVD管理器对话框中从左侧树“虚拟设备”中选择一项时启动一项,启动UI有“擦除用户数据”选项

于 2010-06-03T02:25:12.833 回答
0

以下方法对我有用

  1. 在终端窗口中导航到您的 android SDK/tools 文件夹(如果您没有为其添加路径)

  2. 确保您计划清理的虚拟设备已关闭。

  3. 运行命令“./emulator -wipe-data -avd YourAvdName”,其中 YourAvdName 是您的虚拟 android 设备的名称

于 2010-06-16T11:40:50.723 回答
0

该问题可以通过更改模拟器的分区大小来解决。

转到您的 \Android\Sdk\emulator 路径并键入以下命令。

emulator -avd android_emulator_name -partition-size 1500 -wipe-data

现在它可以工作了,你已经增加了你的分区大小。您可以在运行上述命令之前和之后使用以下命令来观察大小的变化。

adb shell df
于 2021-09-22T11:50:50.677 回答
0

我正在使用 VSCode,而我的 AVD 设置来自我有一段时间没有使用过的较旧的 Android Studio 设置。

我可以通过找到 AVD 图像所在的位置然后搜索包含文本的文件来解决此问题

disk.dataPartition.size

找到 AVD 的目录后运行 afind . -name "avd*"和 a 。grep "disk" *

修改文件中的disk.dataPartition.sizehardware-qemu.ini对我有用。

于 2021-03-11T08:45:39.677 回答
-2

尝试选择项目-> 清洁。一个简单的清洁可以解决它。

于 2011-01-05T15:33:12.720 回答