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

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

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

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


当前回答

我也面临着同样的问题。 在我的应用程序中有服务。 即使在应用程序卸载后,服务仍在后台运行,在执行应用程序强制停止后,收到应用程序已卸载的消息。 然后我安装了应用程序,没有任何问题。

其他回答

在我的例子中,这是因为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来解决我的问题

使用Android Studio,我之前安装了APK的未签名调试版本(Build > Build APK),在安装有签名的发布版本之前必须卸载它(Build Variant > Build Variant: release, Build > Generate signed APK)。

我尝试了所有发布的方法, 都要放弃了 签名这件事解决了这个问题。

找到了一些写着“apk签名者”的应用程序,它做到了。

在你的app模块(项目主模块)的build>output>apk文件夹中删除。apk文件。 从项目根目录中删除。idea和。gradle文件夹 清理项目。 在android studio的侧边栏点击gradle图标,点击同步图标刷新所有项目。 现在运行项目,它应该可以工作。

我用2个不同的证书为应用程序签名,所以用旧证书删除旧版本,然后重新安装新证书为我解决了这个问题