我有一个程序在Android模拟器工作。我不时地创建一个签名的。apk,并将其导出到我的HTC Desire进行测试。一切都很好。
在我最新导出的。apk上,当我试图安装。apk时,我得到错误消息“应用程序未安装”。它在模拟器上运行良好。
因为我主要是在模拟器上测试,只是时不时地导出到真正的手机上,我不确定这是什么时候发生的。什么可能的原因,它不安装在物理手机,但运行良好的模拟器?
我已经尝试重新启动电话并删除现有的。apk,并不能解决这个问题。
我有一个程序在Android模拟器工作。我不时地创建一个签名的。apk,并将其导出到我的HTC Desire进行测试。一切都很好。
在我最新导出的。apk上,当我试图安装。apk时,我得到错误消息“应用程序未安装”。它在模拟器上运行良好。
因为我主要是在模拟器上测试,只是时不时地导出到真正的手机上,我不确定这是什么时候发生的。什么可能的原因,它不安装在物理手机,但运行良好的模拟器?
我已经尝试重新启动电话并删除现有的。apk,并不能解决这个问题。
当前回答
在你的app模块(项目主模块)的build>output>apk文件夹中删除。apk文件。 从项目根目录中删除。idea和。gradle文件夹 清理项目。 在android studio的侧边栏点击gradle图标,点击同步图标刷新所有项目。 现在运行项目,它应该可以工作。
其他回答
显然,在安装之前重命名APK也可能导致这种情况。我想通过缩短文件名来减少用户从我们的网站上获取应用的输入量。在那之后,他们无法安装它。
一旦我恢复到创建和签名包时使用的原始文件名,我就能够更新安装的应用程序。
我也面临着同样的问题。问题是我的AndroidManifest.xml文件中的主要活动写了两次。我删除了副本。
最后我发现没有一个应用程序被成功安装,不仅仅是我的。我将SD卡默认的安装应用程序设置为自动。这就解决了问题。
对我来说,原因是我在同一部手机上使用不同的构建变体进行了多个构建:
所发生的事情是,其中一些构建是由我构建的,另一个是由另一个开发人员发给我的。试图安装开发人员,而我有其他构建(由我构建)导致上述错误。
所以修复很简单:删除我手机上的所有构建(不管构建变体)..然后安装我的同事发来的apk ..而且效果很好
通过命令行创建keystore文件
keytool -genkey -alias key_file_name.keystore -keyalg RSA -validity 1000000000000000 -keystore key_file_name.keystore
通过Eclipse导出apk,右键单击Android项目Android Tools >导出签名应用程序包,然后给出密钥库位置和密码。
这将crate signed apk,同时apk将被zipaligned。和安装。
如果你通过命令行全部,有时你可能会遇到“应用程序未安装”错误。 (应用程序未安装错误不仅会发生在使用命令行时。也可能是其他原因)