首先Android.xml加入这句
android:sharedUserId="android.uid.system"
然后需要找到系统组的人拿到签名证书文件:platform.pk8 和 platform.x509.pem,对该apk进行系统签名:
java -jar signapk.jar platform.x509.pem platform.pk8 Demo.apk signed.apk
其中:signapk.jar 是签名工具。
Demo.apk 是未签名的apk
signed.apk 是指定的生成的apk的名字
这样就能生成带系统签名的apk, 再次执行adb install 就不会再报 INSTALL_FAILED_SHARED_USER_INCOMPATIBLE 这样的问题了。
关于 platform.pk8 和 platform.x509.pem 这两个文件
这两个文件位于: /build/target/product/security/ 目录下:
但要注意不能直接使用AOSP code中的这两个文件,这两个文件由定制android系统的厂商提供。
编译源码时,可以直接使用源码下面的这两个文件,然后签名在虚拟机上跑,也是可以使用系统权限
signapk.jar 下载链接:链接: https://pan.baidu.com/s/1mVQTwLP_Ju52p5A_MGr8UQ 提取码: ba3c