设置android时出错:installLocation =“preferExternal”

当我设置Manifest.xml文件像这样

<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.fugo.Rocket" android:versionCode="1" android:versionName="1.0" android:installLocation="preferExternal"> 

android安装将会出错

[2011-03-24 18:18:47 – Rocket Project]安装错误:INSTALL_FAILED_CONTAINER_ERROR [2011-03-24 18:18:47 – Rocket Project]请查看logcat输出了解更多详情。 [2011-03-24 18:18:47 – 火箭计划]发射取消!

但是当我设置android:intallLocation =“auto”

安装成功。 这是为什么?

logcat错误

03-24 18:48:38.784:错误/ PackageHelper(1284):创build安全容器失败smdl2tmp1 03-24 18:48:38.784:错误/ DefContainer(1284):无法创build容器smdl2tmp1 03-24 18:48: 38.784:错误/ Vold(86):当前存在ASEC文件'/mnt/secure/asec/smdl2tmp1.asec' – 首先销毁! (地址已经在使用)

Solutions Collecting From Web of "设置android时出错:installLocation =“preferExternal”"

检查你的minSDKversion设置为什么。 此function只能从FROYO获得。 (SDK VERSION 8起)。

你也需要编译这个在Android2.2 sdk上运行

在我的情况下,文件smdl2tmp1.asec以某种方式损坏。 我把卡放在电脑上,我甚至无法将该文件复制到我的硬盘(用于备份)。 所以我不得不删除它,并解决了这个问题。

昨天我的手机在安装游戏的时候重新启动,我认为这个问题有点麻烦。

看起来Android在这方面有点小错误,并没有正确处理所有可能的情况。

我有一个类似的,但更复杂的问题。 该解决scheme基本上是删除/sdcard/.android_secure /中适当的文件…另请参阅:

http://www.androidpolice.com/2011/04/19/fixing-the-couldnt-install-on-usb-storage-or-sd-card-problem-on-android/

我自己的问题涉及两个 Android设备。 一个应用程序安装在设备#1(Android 2.2)上,然后我将设备#1挂载到设备#2(Android 4.0.3)上。 然后,我在设备#2上安装了相同的应用程序。 猜猜是什么,它被安装到设备#1的SD卡上, 覆盖设备#1上的安装。 卸载设备#1后,该应用程序无法在设备#2上运行。 该应用程序仍然在设备#1上工作。 我卸载它在设备#2,没有错误,但不能重新安装它(我得到了错误“无法创build安全容器smdl2tmp1”)。

我的解决scheme是卸载设备#1上的应用程序,然后重新安装到设备#2,然后安装到设备#2工作。 然后我把应用程序从SD卡移到内存。

我可以build议你检查一下,看看你的模拟器是否安装了外置的SD卡? 您可以在创buildAVD时进行设置。

重新启动设备为我工作。