您的位置:首页 > 大数据 > 人工智能

adb install -r 安装应用 报错[INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES] 和 如何给APK 系统签名

2018-03-05 14:26 591 查看
[INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES]
原因是APK签名问题导致的.
如果App 的 AndroidManifest.xml  中增加了 android:sharedUserId="android.uid.system"  (增加这个属性作为系统应用打入系统,可以修改系统时间等)

因为app作为系统应用运行在系统中,但是他的签名和系统签名不一致导致的 安装失败

给APK 系统签名
签名需要的文件

platform.pk8
platform.x509.pem
signapk.jar

这三个都是可以在源码里拿到的
platform.pk8和platform.x509.pem都可以在build/target/product/security/目录下找到
signapk.jar在build/tools/signapk/目录下

签名指令
java -jar signapk.jar  platform.x509.pem   platform.pk8   input.apk  output.apk

方便签名,可以把这三个文件都拷贝到一个文件夹中. 不拷贝,每个文件加上路径也可以.
java -jar signapk.jar  security/platform.x509.pem  security/platform.pk8  XCStore.apk   XCSTore_Sign.apk

拿到重新签名后的APK 不能 adb install 安装,应该 push  到 system/app 目录中
adb  push  XXX.apk   /system/app

如果报错 Read-only file system错误 ,  是因为没有在remount模式下.
执行如下指令
adb reboot
adb remount  

如果是用串口工具替换系统应用
cd  /dev
sudo minicom -D ttyUSB*

// 输入电脑密码
进入串口工具
首先mount
mount -o remount  /system
cd system/app
rm XXX.apk
cp /mnt/udisk/XXX.apk  ./        //拷贝U盘中的APK到system/app中
chmod 777 XXX.apk    //给考入的APK增加权限
sync
reboot   
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐