我有时(不经常)在我的一个项目中遇到这种情况,只有几节课 安装错误:INSTALL_FAILED_INSUFFICIENT_STORAGE

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


当前回答

在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 

其他回答

这显然不是一个恰当的答案,但它是一个小小的暗示。

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

而不是把它们作为资源,在运行你的应用程序(安装后),你可以从SD卡上获取文件(防御不同的文件,因为用户可能不会保留你需要的文件)。为此U可以使用ContentResolver采取音频,图像文件上的用户选择。

这样你就可以给用户另一个功能,比如他可以自己选择加载音频/图像文件到应用程序中。

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

这个问题可以通过改变模拟器的分区大小来解决。

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

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

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

adb shell df

avd管理器有一个选项“理想大小的系统分区”,尝试设置为1024MB,或使用命令行启动选项,做同样的事情。

供参考,我只在4.0模拟器图像中遇到过这个问题。

我使用VSCode和我的AVD设置是从一个旧的Android工作室设置,我没有使用一段时间。

我能够通过找到AVD图像所在的位置,然后搜索具有文本的文件来修复这个问题

disk.dataPartition.size

运行查找。name "avd*"和一个grep "disk" *,一旦你找到了avd的目录。

修改hardware-qemu.ini文件中的disk. datappartition .size值对我有用。