Android上的“应用程序未安装”错误

我有一个在Android模拟器工作的程序。 每隔一段时间,我一直在创build一个签名的.apk,并将其导出到我的HTC Desire进行testing。 一切都很好。

在我最近导出的.apk文件中,当我尝试安装.apk文件时,收到错误消息“App not installed”。 它在仿真器上运行良好。

由于我主要在模拟器上进行testing,并且只是每次都出口到真实的手机,所以我不确定这是什么时候发生的。 它不是在物理电话上安装,而是在模拟器上运行良好的可能原因是什么?

我试图重新启动电话和删除现有的.apk,并没有解决这个错误。

主要针对较旧的手机

我只遇到了App not installed错误,当试图安装一个apk上我的手机运行在4.4.2又名奇巧,但我的朋友没有遇到这个错误在他的手机上运行6 +。 我尝试了其他解决scheme,例如删除旧的/debugging版本的应用程序,因为apk是一个发行版本,清除debugging应用程序的数据,甚至清除我所有的caching数据。 然后,最终我意识到我所要做的就是在构build我的签名apk时select两个签名版本。

在这里输入图像描述

之前我只select了V2 (Full APK Signature) ,但是在select了V1 Jar Signature之后,我能够在我的4.4.2设备上成功安装我签名的APK。 希望这可以帮助别人!

我有一个类似的问题,这是因为我试图安装一个apk的电话与以前版本的相同的apk,并且两个都没有用相同的证书签名。 我的意思是,当我使用相同的证书,我能够覆盖以前的安装,但是当我在版本之间更改证书时,安装是不可能的。 你使用相同的证书吗?

显然这个问题有很多原因。 对我来说,情况是这样的:我已经从Android Studio(v1.3.2)中部署到我的nexus 7(实际设备)。 一切正常。 然后我创build了一个已签名的apk并上传到我的Google云端硬盘。 断开与USB的连接后,我去了设置/应用程序并卸载了我的应用程序(App1)。 然后我打开谷歌驱动器,并点击我的App1.apk,并select安装它(需要确保你已经允许在设置安装安装)。 然后我得到了可怕的消息“应用程序未安装”

对于我的解决scheme:回到设置/应用程序,并滚动所有的应用程序, 在底部是我的App1 苍白的版本 (请注意,原来的App1是在按字母顺序排列,如上所述的顶部)。 当点击苍白的版本时,它说“没有为这个用户安装”。 (我已经build立了我的联系,有多个用户)。 但在右上angular有一个三点button 。 我按了这个,它说“卸载所有用户” 。 我做了什么,它解决了这个问题。 我现在可以点击App1.apk,它安装正常,没有错误。

我面临同样的问题。 问题是我的AndroidManifest.xml文件中的主要活动被写了两次。 我删除了重复。

如果您在您的AndroidManifest.xml中声明了两次MainActivity,就会发生这种情况。

另一个可能的原因是:您更改了启动活动。 提示:不要使用已经发布的应用程序! Android Developers博客中讨论的原因。

2017年

我今年遇到这个问题是因为:

截图

唯一的v2被检查。

我检查了唯一的v1后,所有的工作正常。

在这里你可以阅读有关它

我有同样的问题。 我没有意识到,应用程序必须签署,甚至testing。

自签之后,安装好了。

我知道这是一个旧的post,但对于新用户可能是有用的。 我有同样的问题:我的应用程序工作正常,而debbuging。 当我签署APK时,我得到了同样的消息:“应用程序未安装”。

我修正了卸载我的JDK(我正在使用jdk-6u14-windows-x64)并安装了一个新的(jdk-6u29-windows-x64)。 再次输出并签名APK后,一切都OK了!

恢复,我的问题是在JAVA版本。 谢谢Oracle!

我有同样的问题,这是如何解决它:转到清单文件,并确保您有“Debuggable”和“只testing”属性设置为false。 它为我工作:)

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

如果文件pipe理器中的.android_secure文件夹为空,请将其从PC中删除。

我的问题是,我有多个用户帐户在设备上。 我删除了1个帐户的应用程序,但它仍然安装在另一个帐户。 因此这个命名空间相撞,没有安装。 从所有用户卸载应用程序为我解决它。

我也解决了这个问题,

问题是,我宣布我的主要活动两次,作为第一个加载的活动,我也指定了一个意图filter,并再次下面我宣布了它。

只要确保你不要两次宣布你的活动。

最后,我发现没有应用程序正在成功安装,而不仅仅是我的。 我将从SD卡安装应用程序默认设置为自动。 这固定它。

我有同样的问题,即应用程序显示为正在安装,但不会启动时,图标被点击。 经过一番轰炸之后,我发现我在AndroidManifest文件中为我的主要启动器活动愚蠢地放置了“android:exported =”false“…。一旦我将其删除,应用程序启动罚款..

通过命令行创build密钥库文件

keytool -genkey -alias key_file_name.keystore -keyalg RSA -validity 1000000000000000 -keystore key_file_name.keystore

通过Eclipse导出apk,右键单击Android项目Android工具>导出已签名的应用程序包 ,然后input密钥库位置和密码。

这将在同一时间APK apk签署APKlogin。 并可以安装。

如果您通过命令行进行所有操作,有时您可能会遇到“应用程序未安装”错误。 (应用程序未安装错误不仅可能发生,使用命令行时也可能是其他原因)

如果您有该应用程序的以前的版本,请先尝试清除它,现在我的问题已通过该方法解决。

请检查Android版本。

如果您正在安装非市场应用程序,而且版本不兼容,则会出现此错误。

例如:针对2.3.4的应用程序您的设备是2.2然后你会得到这个错误。

如果应用程序已安装到SD卡或移动到SD卡,然后USB电缆已连接,导致SD卡卸载,也可能出现“应用程序未安装”错误。

closuresUSB存储器或将应用程序移回内部存储器将解决此问题。

我也遇到过这个问题。 请尝试这个解决scheme。 确保您的项目的包名称不同于您的移动电话中已经安装的以前的项目。 我认为他们的名字会发生冲突。 它在我工作。

我的问题类似于@Lunatikzx。 由于错误的许可标签被写入属性到应用程序:

 <application android:permission="android.permission.WRITE_EXTERNAL_STORAGE" android:label="@string/app_name" android:icon="@drawable/ic_launcher" android:testOnly="false" android:debuggable="true"> 

对我来说固定的是更改权限标签来分隔标签,如下所示:

 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 

显然这也可能是由于在安装APK之前重命名APK造成的。 我想通过缩短文件名来减less用户通过我们的网站获取应用程序所需的打字量。 之后,他们无法安装它。

一旦我恢复到创build和签署软件包时使用的原始文件名,我可以更新已安装的应用程序。

对我来说,原因是我在同一个电话上使用了不同的版本变体的多个版本:

在这里输入图像描述

发生了什么事情是这些版本是由build造的,另外一个是另一个开发者发给我的。试图安装开发者,而我有其他版本(由我build造)导致上述错误。

所以修复很简单:删除我的手机上的所有版本(无论是build立变种)..然后安装由我的同行发送的apk ..它的工作就像一个魅力

尝试安装应用程序时打开您的logCat。 将其设置为“无filter”。 search“InstallAppProgress”程序包标识符。 如果安装失败,您应该看到“安装错误代码”。 在我的情况是这样的

 D/InstallAppProgress: Installation error code: -7 

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

您也可能会遇到此问题,因为您的设备制造商未授权Google商业应用,如Play商店,YouTube,Google地图等。请按照此答案解决问题。

在制作主屏幕小部件时也会发生这种情况,并且您的小部件XML文件在其android:configure属性中指定了不正确的Activity。

当这个问题发生在我身上时,我通过删除我在项目文件夹中的一些非必要文件(如密钥库)来解决这个问题。

事后看来,把人的钥匙给你的游戏可能是不好的。

使用Android Studio,我以前安装了未签名的APK( Build> Build APK )debugging版本,并且在安装签名版本( Build Variants> Build Variant:releaseBuild> Generate Signed APK )之前必须先卸载它。

在所有者和来宾用户Marsmallow there.If来宾安装了相同的应用程序,我们不能在owner.I安装相同的应用程序。我解决了这个删除应用程序在客人

我遇到了这个问题,当我的定制构build工具发生了一个错误,这个工具会使用ADT和一个针对iOS的证书(这当然不是我的第一个猜测,因为除了Android证书之外似乎没有什么特别之处只有你应该有一个,他们只是RSA-1024证书,甚至自签名也没问题,至less对于非市场安装)。

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