我有一个程序在Android模拟器工作。我不时地创建一个签名的。apk,并将其导出到我的HTC Desire进行测试。一切都很好。

在我最新导出的。apk上,当我试图安装。apk时,我得到错误消息“应用程序未安装”。它在模拟器上运行良好。

因为我主要是在模拟器上测试,只是时不时地导出到真正的手机上,我不确定这是什么时候发生的。什么可能的原因,它不安装在物理手机,但运行良好的模拟器?

我已经尝试重新启动电话并删除现有的。apk,并不能解决这个问题。


当前回答

ARGHHHHH !我试图安装为Unsigned Release APK时,正确的设置是DEBUG SDK。

一个小时过去了。

其他回答

尝试在AndroidManifest.xml中进行更改:

设置debuggable为true 签署apk

如果应用程序没有安装,删除文件.android_secure/smdl2tmpl。asec从SD卡。

如果文件管理器中“。android_secure”文件夹为空,请将其从PC机上删除。

在尝试安装应用程序时,打开你的logCat。将其设置为“无过滤器”。搜索“InstallAppProgress”包标识符。如果安装失败,您将看到“安装错误代码”。对我来说是

D/InstallAppProgress: Installation error code: -7

从这里,您可以使用此链接查找有关特定错误代码的信息。

在我的例子中,这是因为Android Studio 3.0设置Android:testOnly="true"在apk上,从版本build Variant构建。

https://commonsware.com/blog/2017/10/31/android-studio-3p0-flag-test-only.html

所以运行。/gradlew assemblerrelease来解决我的问题

我曾以各种形式遇到过这个问题,但这一次是一个新的问题:

在这种情况下,我有提供商名称冲突-相同的提供商名称存在于我的应用程序和我的另一个应用程序。