我已经从CyanogenMod 9编译了Trebuchet launcher,并试图用adb安装它:

$ adb install out/target/product/generic/system/app/Trebuchet.apk
3986 KB/s (7870141 bytes in 1.928s)
    pkg: /data/local/tmp/Trebuchet.apk
Failure [INSTALL_FAILED_UPDATE_INCOMPATIBLE]

我用CM9试了Nexus S,用JB试了Galaxy Nexus。为什么我得到这个错误?

编辑:在我的情况下,我尝试用包管理器重新安装系统包。这是不支持的,所以我得到这个错误。在不同的情况下,错误的来源可能不同。


当前回答

有两种方法可行

1:手动从移动设备卸载app

2:打开命令提示符,跟踪adband路径执行如下命令

adb uninstall your_package_name

其他回答

工作概况/工作空间

别忘了,根据你手机上的用户帐户(比如谷歌Workspace -G Suite帐户配置文件,设备管理设置为高级)可能会为你的手机生成一个工作配置文件。

90%的人都有,但自己都不知道。你通常会在所有应用程序视图中看到工作配置文件。就像一个单独的工作区,有不同的应用程序。

你可以识别当你浏览应用程序从工作档案,如果他们有一个小锁的行李。 无论如何:

你必须从工作简介中删除应用程序!!

进入设置/应用程序/ 搜索你的应用程序和卸载…

这对我来说很有效

我只是重命名了包,它为我工作。

或者如果你正在使用Ionic,你可以删除应用程序,然后再试一次,当Ionic检测到你正在部署的应用程序不是来自同一个版本时,就会发生这种情况。这种情况经常发生在你从pc换电脑的时候。

如果使用不同的证书签署应用程序,就会发生这种情况。你可以用

adb install -r myapk.apk

覆盖您设备上现有的apk,但如果您使用与已安装的apk不同的证书签署新的apk,则仍然会得到错误。

在这种情况下,在尝试安装之前,您需要从设备上卸载apk。但是,这也会影响您的应用程序,因为您原来的签名可能绑定到某些Developor API,因此您可能需要使用新的凭据更新控制台。

去设置/应用程序/搜索你的应用程序和卸载… 打开命令提示符和“adb卸载”

这对我来说很有效