安卓_安装失败版本降级

33

我要在Google Play商店更新我的apk应用程序,我知道我必须在清单文件中升级版本代码和名称,但是安装失败了。

Installation error: INSTALL_FAILED_VERSION_DOWNGRADE 
请查看logcat输出以获取更多详细信息。启动已取消!我像这样修改了版本代码和名称:android:versionCode="2" android:versionName="1.0.5"。我做错了吗?
13个回答

47

首先在您的设备上卸载该应用,然后重新安装最新版本。


2
太好了。你让我的一天变得完美。谢谢。 - Roberto Rodriguez
4
这将清除我应用程序中的所有配置。我更喜欢使用@kemuri所说的adb install -d -r your.apk - Osvel Alvarez Jacomino

42

当你通过adb安装时,你可以传递-d来允许版本降级

adb install -d -r your.apk

-r 也将替换现有应用程序。


7
自 Android 7(Nougat)起,出于安全考虑,除非应用程序被标记为可调试的,否则 adb install -d 将不再起作用。 - xhienne

9
Installation error: INSTALL_FAILED_VERSION_DOWNGRADE Please check logcat output for more details. Launch canceled!

我通过使用命令提示符,导航到项目文件夹,并使用“adb uninstall package”来解决了这个问题(您可以从Manifest.xml文件中获取包)。
在我的情况下: D:\ projectFolder \ AndriodApp> adb卸载com.example.app 然后在模拟器或移动设备上再次启动应用程序。

5

只需使用以下命令:

$ adb -e uninstall your.application.package.name


3
请解释你的解决方案。 - Martin Zabel
2
该命令在运行的模拟器实例上执行卸载操作。这并没有回答问题。 - Paul Lammertsma
这将我的数据库迁移测试加速了两倍!谢谢。 - Willi Mentzel
当不使用模拟器时,应该删除“-e”标志。 - Elliott Beach
有时在执行此操作后,还需要重新启动设备。 - Steven Mark Ford

4

显然,您当前安装的应用程序版本的versionCode大于2,因此在设备上安装失败。


我将版本代码设置为“105”,但是在我的设备上出现了对话框“错误,请重新启动应用程序错误代码:20”。我在Logcat中找不到错误。你有什么想法吗?我一点头绪也没有。 - user3503072

4

当您安装的apk版本低于您尝试构建apk的版本时,就会出现这种情况。例如,您刚刚升级了您的版本并尝试使用它来构建apk,但是您的设备中已经安装了一个由先前版本构建的apk。

在这种情况下,您必须卸载之前的apk并使用现有版本构建一个新的apk。


3

我刚刚在设置>应用程序>全部应用程序>应用程序中将其禁用后,就能够使用常规命令安装了: adb -r name.apk


2

首先,您需要检查Playstore APK的versionCode和versionName,然后将两个版本号都加1。

例如,在Playstore中,versionCode="42"versionName="1.4.2",那么您需要在最新的代码中将它们更改为versionCode="43"versionName="1.4.3"


很好,但是在哪里可以找到那个versionCode呢? - andreszs
1
  1. 通过清单文件编程自动增加版本号。
  2. 在生产中早期版本请访问https://dev59.com/CGYq5IYBdhLWcg3wcwWE。
- Ajay Takur

1
Ajay Takur是正确的。您的应用程序当前版本代码应该大于playstore的版本。
但是,请参考this的答案。它可能会解决您的问题。

0

同一错误信息的另一种解释:在Android Studio中(与Eclipse不同),版本代码/名称列在gradle文件中。如果它们同时存在于gradle文件和清单中,则gradle文件中的优先级更高。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接