这是什么意思:失败[INSTALL_FAILED_CONTAINER_ERROR]?

时间:2011-04-21 12:46:57

标签: android package-managers android-package-managers

我尝试部署我的应用,有时会收到此错误:

Failure 
[INSTALL_FAILED_CONTAINER_ERROR] 

我试图谷歌但却找不到错误的含义或含义 引起的。我通过IDE(IntelliJ)部署文件被复制到 设备到/ data / local / tmp(无根的Huawei Ideos,运行2.2), 但包经理似乎不喜欢它。安装之前 apk,我已经预先从设备中删除了应用程序。我也做了 确保设备上的/ data / local / tmp下没有旧文件。仍然 我现在收到这个错误。 由于我部署了via,因此应使用调试密钥对包进行签名 IDE通过'运行'应用程序。

$ pwd 
/data/local/tmp 
$ ls -l 
-rw-rw-rw- shell    shell    17257686 2011-04-21 20:31 
com.company.shop 
$ pm install -r com.company.shop 
        pkg: com.company.shop 
Failure [INSTALL_FAILED_CONTAINER_ERROR]

它是什么意思以及如何解决它?

修改/更新

当不允许在SD卡上安装应用程序时,我可以避免错误,设置

android:installLocation="internalOnly"
清单中的

。它可以用于开发,但对于生产而言,它并不是我想要的 - 因为我的应用程序相当大,只有17mb;因此我更喜欢它在SD卡上。 如何能够在没有root的情况下将其安装在外部存储器上(因为这是我可以删除/mnt/secure/asec/smdl2tmp1.asec的唯一方法,这似乎也是一种解决方案。)

15 个答案:

答案 0 :(得分:218)

更改安装位置
android:installLocation="preferExternal"

android:installLocation="auto"

在项目的AndroidManifest.xml中。

答案 1 :(得分:44)

从您的设备中删除此文件

/mnt/secure/asec/smdl2tmp1.asec

Mathias Conradt编辑/更新(OP):

如果您没有root访问权限,则需要安装SD卡并通过pc:

将其删除
/.android_secure/smdl2tmp1.asec

答案 2 :(得分:31)

如果您正在使用模拟器,请对其进行编辑并添加更多内存。我遇到了这样的问题而且我所做的就是将AVD的内存从200 MB编辑到1000 MB,问题似乎消失了......祝你好运。

答案 3 :(得分:7)

这意味着之前的安装已损坏。如果您在外部安装,我建议您再次尝试格式化SD卡。

答案 4 :(得分:6)

我反复遇到这个错误。我发现避免错误的最简单方法就是简单地格式化SD卡。使用手机或模拟器内部工具。我发现自动生成的SD卡甚至使你自己的sdcard.iso失败并导致此错误,除非由内部android工具格式化。

答案 5 :(得分:4)

对我来说,这是因为我的模拟器SD卡上没有空间。我正在处理一个非常大的项目,我认为40 MB已经足够了,但我将其改为200 mb,问题就消失了。

答案 6 :(得分:3)

我从Android 5.0.1收到此错误消息。 我已将首选安装位置更改为"可移动SD卡"通过设置 - >应用 - >首选安装位置。

我将选项更改回"让系统决定"并且错误消息消失了。

答案 7 :(得分:2)

在我的Note 8上使用Cyanogenmod 12.1(Android 5.1.1)上的各种.apk与Link2SD的第二个分区有相同的错误。我可以通过以root身份强制安装adb来安装应用程序:

adb root
adb install -f myapp.apk

答案 8 :(得分:1)

对我来说,这是设备语言。我将语言更改为阿拉伯语以测试我的应用程序。然后我收到了这个错误。恢复语言就行了。

答案 9 :(得分:1)

android:installLocation =“auto”有效.. !!

如果没有, 检查外部存储空间大小后。[可用内存>应用尺寸] 如果存储空间不足,那么也会抛出此错误。

答案 10 :(得分:0)

我遇到了与模拟器类似的问题。当我将仿真器的CPU类型从ARM更改为Intel时,它就消失了。

答案 11 :(得分:0)

在某些情况下,删除libs/android-support-v4.jar会产生此错误。

答案 12 :(得分:0)

对我来说,卸载几个应用程序解决了这个问题。当本地存储有足够的内存时,APK的部署成功完成。但通常我只是重启一个小工具,安装完成。 此外,一些程序,如清洁大师可能有所帮助。只需经常擦除无用的进程并使用Clean Master关闭程序并获得足够的内存。

答案 13 :(得分:0)

重启我的设备为我解决了这个问题。

答案 14 :(得分:0)

当您没有足够的内部存储空间来安装应用程序时会发生这种情况。只需通过删除不需要的文件或照片来清理内部存储中的一些内存。内存清理软件也可以提供帮助。