当工程使用android:installLocation="preferExternal"时,某些时候会出现
今天我在N880 上调试我的程序,有时候程序报告无法安装,用Adb install 显示Failure [INSTALL_FAILED_CONTAINER_ERROR]
查看logcat 显示
07-10 14:05:50.143: E/PackageHelper(670): Failed to create secure container smdl2tmp1
07-10 14:05:50.143: E/DefContainer(670): Failed to create container smdl2tmp1
显然是/mnt/secure/asec/smdl2tmp1.asec 出问题了。
由于我的手机没有root ,不能直接访问这个文件也不能 adb shell 来rm
adb su root 显示
C:\Users\luozhuang\workspace\word2text>adb shell
$ rm /mnt/secure/asec/smdl2tmp1.asec
rm /mnt/secure/asec/smdl2tmp1.asec
rm failed for /mnt/secure/asec/smdl2tmp1.asec, Permission denied
$ sudo rm /mnt/secure/asec/smdl2tmp1.asec
sudo rm /mnt/secure/asec/smdl2tmp1.asec
sudo: permission denied
$ su
su
su: permission denied
$ su root
su root
su: permission denied
解决方法就是:
用USB大容量方式 连接电脑,
进入SD卡下.android_secure目录
(目录为隐藏目录,需要将电脑 资源管理器-工具-文件夹选项-查看 中的“显示所有文件和文件夹”一项选中);
查找“smdl2tmp1.asec”文件,将其删除。
然后推出 手机或者拔下数据线
重新安装 就可以了。