eclipse编译出来的apk,安装时报出INSTALL_FAILED_SHARED_USER_INCOMPATIBLE的错误。
原因:apk的AndroidManifest.xml中声明了android:sharedUserId="android.uid.system",但没有相应的签名
解决方案:
1.将签名工具(signapk.jar)(/TOPDIR/out/host/linux-x86/framework )复制到 /TOPDIR/packages/experimental/yourapp/下
2. 将编译目标系统时的签名证书platform.pk8和platform.x509.pem(/DGV/E660T/build/target/product/security )复制到 /TOPDIR/packages/experimental/yourapp/下
3:cd /TOPDIR/packages/experimental/yourapp/
4.执行签名命令:java -jar signapk.jar platform.x509.pem platform.pk8 yourapp.apk signedyourapp.apk
4.将signedyourapp.apk安装即可,如果之前安装过本apk,需要用adb install -r signedyourapp.apk
类似地,在android-x86源码树编译也会存在同样的问题,解决方法类似。
或直接把目标系统的签名证书platform.pk8和platform.x509.pem(根据android.mk文件的LOCAL_CERTIFICATE 定义,也可能是shared.pk8、media.pk8等)
覆盖到build\target\product\security也可,这样就不需要再手工签名了
x86 INSTALL_FAILED_SHARED_USER_INCOMPATIBLE
最新推荐文章于 2023-03-17 16:30:34 发布