INSTALL_FAILED_INSUFFICIENT_STORAGE错误是每个Android开发人员的烦恼。这与应用程序大小或可用存储空间大小无关。重新启动目标设备可以短暂地修复问题,但它很快就会回来。人们在留言板上发帖询问为什么会出现这个问题,但令人沮丧的是,谷歌的人对这个问题保持沉默。

有一个简单的变通办法。如果您的测试设备运行的是Android 2.2或更高版本,那么将Android:installLocation属性添加到应用程序的清单文件中,值为“preferExternal”。这将迫使应用程序安装在设备的外部存储设备上,比如手机的SD卡。

例如:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.andrewsmith.android.darkness"
          android:installLocation="preferExternal"

这更像是一种创可贴,而不是补救措施,如果你想要完成的应用程序安装在设备的内部内存中,这可能不太理想。但它至少会让开发过程不那么令人沮丧。


当前回答

您需要增加Android模拟器的内存容量。有两种方法:

Right click the root of your Android Project, go to "Run As" and then go to "Run Configurations...". Locate the "Android Application" node in the tree at the left, and then select your project and go to the "Target" tab on the right side of the window look down for the "Additional Emulator Command Line Options" field (sometimes you'll need to make the window larger) and finally paste "-partition-size 1024" there. Click Apply and then Run to use your emulator. Go to Eclipse's Preferences, and then select “Launch” Add “-partition-size 1024” on the “Default emulator option” field. Click “Apply” and use your emulator as usual.

其他回答

如果您在模拟器上运行应用程序,如果此问题仍然存在,请检查通知管理器。如果它显示一个图标,并通知“手机内存已满”,这意味着您已经在模拟器上安装了如此多的应用程序。从“设置>>管理应用程序>>选择应用程序>>卸载”中卸载当前不需要的多个应用程序。 这集。 现在重新运行程序。

我的手机没有root权限,也没有准备好把我的应用程序安装在SD卡上。/data/上有15 MB的可用空间,而我的应用程序不足2 MB。

有一段时间我还过得去;清理Eclipse项目并重新启动手机,但最终停止工作(可能是在更新之后)。

清理我的应用程序缓存为我解决了这个问题,不需要重新启动手机或卸载应用程序。

市场上有一些应用程序可以一次性清除多个应用程序的缓存。搜索“干净”。

如果你使用的是真正的设备,你只是耗尽了内部内存。只需进入Android设置->应用程序,并移动一些应用程序到SD卡或卸载一些应用程序。

如果您正在使用模拟器,请参阅RacZo的回答。

在运行模拟器时,请确保没有将android设备与usb连接

由于这个问题仍然存在,出于开发目的,我认为我应该在RacZo的回答中添加一些内容。如果你没有使用Eclipse插件,或者因为任何原因你没有源代码,而只有.apk,你可以在启动模拟器时使用相同的选项从命令行增加分区大小:

emulator -avd <emulator name> -partition-size 1024

据我所知,这个选项在developer.android.com上没有记录,所以我想我将它发布在这里,以便人们可以找到这个解决方案。