Failure [DELETE_FAILED_INTERNAL_ERROR] 解决 ADB 安装APK失败问题。
- 其实,在应用第一次安装的时候,APK 文件会被保存在如下路径中:
/data/app/<package-name>-1.apk
- 当这个 APK 文件更新,需要重新安装之后, APK 会重新被保存在相同的目录中,但是文件的序号会相应增加。然后之前一个版本的 APK -1.apk文件会被删除。
/data/app/<package-name>-2.apk
- 如果这时又有了一个新版本的 APK 需要安装,那么这个文件又会被保存为 -1.apk, 相应的,-2.apk 也会被删除。以此类推,如果又有新的 APK, 那么这个逻辑会一直交替下去。而 INSTALL_FAILED_INSUFFICIENT_STORAGE 错误发生的情况中,大部分是因为 APK 更新之后, /data/app/ 里的文件删除失败, -1.apk 和 -2.apk 残留导致的。
解决办法
- 所以,很简单,在安装之前先清除 /data/app/ 下对应包名的文件就好了。解决方法如下:
adb shell pm uninstall <full.packge.name>
adb shell rm -rf /data/app/<full.package.name>-*
另外检查 /data/data/<packagename> 是不是软链接或者其他的用户占用了
rm -rf /data/data/<packagename>