我有一个程序在Android模拟器工作。我不时地创建一个签名的。apk,并将其导出到我的HTC Desire进行测试。一切都很好。
在我最新导出的。apk上,当我试图安装。apk时,我得到错误消息“应用程序未安装”。它在模拟器上运行良好。
因为我主要是在模拟器上测试,只是时不时地导出到真正的手机上,我不确定这是什么时候发生的。什么可能的原因,它不安装在物理手机,但运行良好的模拟器?
我已经尝试重新启动电话并删除现有的。apk,并不能解决这个问题。
我有一个程序在Android模拟器工作。我不时地创建一个签名的。apk,并将其导出到我的HTC Desire进行测试。一切都很好。
在我最新导出的。apk上,当我试图安装。apk时,我得到错误消息“应用程序未安装”。它在模拟器上运行良好。
因为我主要是在模拟器上测试,只是时不时地导出到真正的手机上,我不确定这是什么时候发生的。什么可能的原因,它不安装在物理手机,但运行良好的模拟器?
我已经尝试重新启动电话并删除现有的。apk,并不能解决这个问题。
当前回答
对于那些使用Android Studio 3的人。
Suryanarayana Reddy的答案是正确的,尽管它没有说明解决问题的步骤,因此。
在你的AndroidManifest.xml的应用标签下添加testOnly="false"和android:debuggable="true",就像这样:
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme"
android:testOnly="false"
android:debuggable="true"
>
然后在AndroidStudio的菜单栏Build > Build APK(s)
其他回答
检查Android版本。
如果你安装的是非市场应用程序,和不兼容的版本,你会得到这个错误。
应用程序的目标是2.3.4 您的设备是2.2 然后你会得到这个错误。
我也遇到了同样的问题,即App显示为正在安装,但当点击图标时不会启动。经过一些头部撞击,我发现我已经愚蠢地放置了' android:exported="false" '为我的主启动器活动在AndroidManifest文件....一旦我删除它,应用程序启动正常。
显然,在安装之前重命名APK也可能导致这种情况。我想通过缩短文件名来减少用户从我们的网站上获取应用的输入量。在那之后,他们无法安装它。
一旦我恢复到创建和签名包时使用的原始文件名,我就能够更新安装的应用程序。
我知道这是一个老帖子,但对新用户可能有用。我也遇到了同样的问题:我的应用程序在调试时工作得很好。当我签署APK时,我得到了同样的消息:“应用程序未安装”。
我修复了卸载JDK(我使用的是JDK -6u14-windows-x64)并安装了一个新的JDK (JDK -6u29-windows-x64)。导出并再次签署APK后,一切正常!
恢复,我的问题是在JAVA版本。谢谢的甲骨文! !
主要针对老款手机
我只是在试图在我的手机上安装一个运行在4.4.2(又名奇巧)上的apk时遇到了应用程序未安装错误,但我的朋友在他的手机上运行在6+上时没有遇到这个错误。我尝试了其他解决方案,比如删除旧的/调试版本的应用程序(因为apk是一个发布版本),清除调试应用程序的数据,甚至清除我所有的缓存数据。然后,最后我意识到我所要做的就是在构建我的签名apk时选择两个签名版本。
之前我只选择了V2(完整的APK签名),但在选择V1 Jar签名之后,我能够成功地在4.4.2设备上安装我签名的APK。