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

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


当前回答

<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

其他回答

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

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

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

然后尝试安装你的apk

在AVD管理器中更新您的设置,并通过启用“擦除用户数据”启动设备。这对我很管用。

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

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

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

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

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

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

在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