我有一个奇怪的问题。我将Android Studio从2.3.3更新到3.0后出现此错误。问题是当我尝试安装apk文件时说它
应用未安装。 该包似乎已损坏。
我已经尝试在调试和发布版本中生成apk并试图安装,但每当我安装apk时它会显示相同的消息..
当我从android studio运行android项目时它正在运行。 可能是gradle问题,但无法修复它。 请帮忙
答案 0 :(得分:113)
答案 1 :(得分:5)
当我自己得到这个案例并且这里的答案对我没有帮助时,我的情况是因为我将gradle app模块文件中的targetSdkVersion
从 24 降级为<强> 22 由于某种原因,显然apk不接受另一个降级targetSdkVersion
安装在它上面。
因此,一旦我将其更改回 24 ,错误就会消失并正确安装应用。
答案 2 :(得分:2)
在我的情况下;如果在更新应用程序时收到此错误,可能是因为目标SDK版本。在这种情况下,您将在日志中收到此错误;
"Package com.android.myapp new target SDK 22 doesn't support runtime permissions but the old target SDK 23 does"
这是因为您之前的应用程序是使用更高版本的sdk构建的。如果您的新应用程序是使用22构建的,而您安装的应用程序是使用23构建的,则更新时会出现The package appears to be corrupt
错误。
答案 3 :(得分:1)
当您发布已签名的apk时,请确保在签名版本
中勾选 v1 和 v2有关详细信息,请参见下面的屏幕截图 http://www.hanselman.com/blog/ManagingMultipleConfigurationFileEnvironmentsWithPreBuildEvents.aspx
答案 4 :(得分:1)
这很奇怪。我不知道为什么在生成签名的apk时会发生这种情况,但是以下步骤对我有用。
就是这样。
答案 5 :(得分:0)
在我的情况下,目标手机已经安装了应用程序,但处于“禁用”状态。所以用户认为它已经被卸载了,但事实并非如此。我进入主应用程序列表,单击“已禁用”应用程序,卸载它,然后APK将继续。
答案 6 :(得分:0)
没有一个答案对我有用。
由于错误消息包损坏,我将不得不运行
adb uninstall <package name>
答案 7 :(得分:0)
运行直接构建APK将起作用。但是请确保卸载以前安装的同名软件包。
答案 8 :(得分:-1)
就我而言,通过Build> Build apks进行构建,就可以了。