我已经从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。为什么我得到这个错误?

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


当前回答

我只是花了一个小时试图调试这个,然后意识到我连接到我的模拟器,而不是我的手机。所以即使我成功地删除了我手机上的应用程序,它仍然失败。愚蠢的错误,但也许这能帮助到其他人。

其他回答

对于MIUI用户,除了通常的USB调试选项,请确保启用这些设置:

通过USB安装 USB调试(安全设置)

然后再次尝试安装app时接受提示。

我没有看到任何人提到我的情况,所以让我加上它-当你在一种模式下构建应用程序(例如开发),然后尝试用不同的模式(例如生产)覆盖它时,它就会发生。

解决方案与其他情况相同-删除设备/模拟器上的应用程序并重新运行。

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

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

问题是为什么他会得到这个错误。卸载将解决这个问题,但在我的情况下,当我安装apk的编译版本时,问题就出现了。我在试着更新我的应用程序。所以我做了什么,我建立了一个签名的apk,然后尝试安装apk, apk安装完美。因此,我不得不删除旧的apk,而是签署更新后再安装它。

我只是花了一个小时试图调试这个,然后意识到我连接到我的模拟器,而不是我的手机。所以即使我成功地删除了我手机上的应用程序,它仍然失败。愚蠢的错误,但也许这能帮助到其他人。