当试图将我的应用程序部署到Android设备时,我得到以下错误:

Deployment failed because of an internal error: Failure [INSTALL_FAILED_UPDATE_INCOMPATIBLE]

我知道这个问题,但应用程序没有安装。它已被Visual Studio在尝试部署期间删除/部分删除。

在过去,我通过从谷歌播放商店下载应用程序,然后从设置>应用程序管理器中删除它来解决这个问题。然而,现在我得到的错误“不兼容的更新”,当它试图安装它。

我尝试使用钛备份和其他一些东西来删除它,但运气不好。

编辑1

我意识到(来自@Motz),我没有提到明显的解决方案是行不通的。也就是说,该应用程序不会出现在设置->应用程序


当前回答

通过命令行使用Ionic和Cordova…

ionic cordova run android --prod

我遇到了这个问题,发现我从以前的测试安装中删除了发布版本,但还有一个旧的调试版本挂在apps抽屉里,我错过了。我把我的设备从电脑上拔下来,打开应用程序抽屉,使用“搜索应用程序..”找到应用程序的所有实例,然后卸载它们。然后我把设备重新插到电脑和中提琴上,它工作了!

谢谢大家的帮助!

其他回答

我经常在Android 5.0+版本的设备上遇到这个问题。因为它在同一设备上有多用户配置文件帐户。每个应用程序将作为所有用户的单独实例安装。确保为所有用户卸载如下截图。

删除手机中的所有应用程序文件

要自动删除手机上的应用程序,您可以使用以下步骤。它可以非常有用的删除你的应用程序和应用程序数据在一个快速和干净的方式。

用这段代码创建一个文本文件,并保存为Uninstall.sh。到终端中这个脚本的文件夹(你放置它的地方),执行:sh Uninstall.sh YOURNAMESPACE

现在你的命名空间文件夹(包括保存的应用程序文件和数据库)将被删除。

  echo "Going to platform tools $HOME/Library/Android/sdk/platform-tools"
  cd $HOME/Library/Android/sdk/platform-tools
  echo "uninstalling app with packagae name $1"
  ./adb uninstall $1

删除pc上的所有应用程序文件

用这段代码创建一个文本文件,并将其保存为DeleteBinObj.sh。

find . -iname "bin" -o -iname "obj" | xargs rm -rf

到你的项目文件夹,你把这个脚本,并在终端:sh DeleteBinObj.sh

在我的情况下,当我切换到android的最低目标版本时,我得到了这个,当我换回原来的一个(当我在第一次创建项目)。 因此,卸载是有效的。但是当我把我的安卓版本换成最新的,我又得到了它。为了解决这个问题,我去了android项目的属性,在android manifest部分,我添加了一个包名,例如com.dotnetdreamer.net。如果您已经有了包名,那么您可以简单地将其重命名为其他名称。

我希望这将在未来帮助到某些人,但只需进入config.xml,在小部件标记中,将默认id(io.ionic.starter)更改为您自己的id。看看这个android包命名。

您必须确保应用程序已卸载。

在你的手机中,尝试转到设置/应用程序,并显示所有已安装的应用程序的列表,然后确保该应用程序已为所有用户卸载(在我的情况下,我已经卸载了该应用程序,但仍为其他人卸载)。