我已经从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。为什么我得到这个错误?
编辑:在我的情况下,我尝试用包管理器重新安装系统包。这是不支持的,所以我得到这个错误。在不同的情况下,错误的来源可能不同。
C:\android-sdk\platform-tools\adb.exe:命令失败,退出码为1
错误输出:adb: failed to install
android应用程序平台\ \ \ \ apk \调试\ app \制造\输出app-debug.apk:
失败[install_failed_update_compatible: Package . sh
com.example。App1签名与之前安装的不匹配
版本;忽略!]
解决方案:
你手机上已经安装了app app1(大多是从play控制台下载,或者上传键更改)
卸载应用程序。
更多的细节:
这是可能的,你已经有这个应用程序上传到播放商店使用上传键,播放控制台应用自己的签名。这就是为什么从谷歌play下载的手机应用程序没有与你的上传密钥相同的签名。
通过卸载应用程序,没有游戏商店版本的应用程序,所以不匹配当你安装一个新版本到你的手机。
希望这能有所帮助。
这可能会引发当应用程序安装在您的设备作为不同的签名应用程序(apk)您试图安装。(简单地说,之前的应用程序是由“系统- a”构建的,现在由“系统- b”构建一个应用程序,并尝试安装)
您可以通过如下所示的一种或其他方式解决此问题。
选项1:
Uninstall the Application in your Device and install the New APK
选项2:
注意:此选项仅适用于当您同时访问Apk构建的旧系统和新系统时
如果你不想删除APk或者它是不允许的,那么你可以得到调试键,系统- a和同样的调试到系统- b
使用Debug键form“System-A”的步骤
点击终端进入
./gradlew signingReport
你将知道你的结果如下
Variant: debug Config:
debug Store: /home/user/debug.keystore
Alias: AndroidDebugKey
MD5: CS:7B:E3:51:C5:2E:36:AA:3F:66:BA:ED:40:DB:86:25
SHA1: 2A:BB:C5:4E:64:4E:FE:12:4C:4E:2B:4E:4E:42:4E:4E:4E:4E:63:83
Valid until: Wednesday, May 6, 2048
获取“调试”。从上面显示的位置导入keystore文件,并将其传输到“System-B”,然后转到
Android studio >> File >> Project Structure >> SigningConfigs
set the location of the "debug.keystore" to Store File and then ok
现在在“系统- b”中构建Apk并运行它就可以了