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

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

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

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


当前回答

在我把手机从Android Pie升级到Android 10之前,在实体手机上加载调试应用程序进行测试一直很可靠。在那之后,每当我试图侧面加载应用程序时,就会出现“应用程序未安装”错误。

根据我的AndroidManifest.xml中的警告,我从…

<application
    android:name=".App"
    android:allowBackup="true" ... />

……

<application
    android:name=".App"
    android:allowBackup="false" ... />

在那之后,我就可以侧面加载我的应用了——只有一次。然后,我又遇到了同样的“应用程序未安装”错误。通过将allowBackup更改为true,它可以再次工作(至少一次)。

从答案的数量和答案的变化可以明显看出,这个问题有很多原因。我把这个分享给大家,希望能帮助到其他人。

其他回答

如果您正在使用cordova,请尝试卸载任何以前通过cordova构建的应用程序。 很奇怪,但是这个方法解决了我的问题

检查Android版本。

如果你安装的是非市场应用程序,和不兼容的版本,你会得到这个错误。

应用程序的目标是2.3.4 您的设备是2.2 然后你会得到这个错误。

我有同样类型的错误,这是由我的android manifest XML文件中的这一行引起的。

android:permission="android.permission.INSTALL_LOCATION_PROVIDER"

我去掉了那条线,问题就解决了。希望这能有所帮助

当我安装到的设备没有足够的存储空间时,我遇到过这个“应用程序未安装”错误。删除几个文件就可以安装应用程序了。奇怪的是,它没有给我一个“空间不足”的消息。(注:我是从一个“未知”位置手动安装apk。)

主要针对老款手机

我只是在试图在我的手机上安装一个运行在4.4.2(又名奇巧)上的apk时遇到了应用程序未安装错误,但我的朋友在他的手机上运行在6+上时没有遇到这个错误。我尝试了其他解决方案,比如删除旧的/调试版本的应用程序(因为apk是一个发布版本),清除调试应用程序的数据,甚至清除我所有的缓存数据。然后,最后我意识到我所要做的就是在构建我的签名apk时选择两个签名版本。

之前我只选择了V2(完整的APK签名),但在选择V1 Jar签名之后,我能够成功地在4.4.2设备上安装我签名的APK。