Android APK 由于签名异常无法安装-- INSTALL_FAILED_SHARED_USER_INCOMPATIBLE 解决

前景 : 在安装第三方APK中会遇到部分已有签名的APK的情况,会有如下的报错信息 : 

adb: failed to install W:\demo.apk: Failure [INSTALL_FAILED_SHARED_USER_INCOMPATIBLE: Package couldn't be installed in /data/app/********** has no signatures that match those in shared user android.uid.system; ignoring!]

INSTALL_FAILED_SHARED_USER_INCOMPATIBLE : 签名文档不一致导致安装失败

解决方法: 

那么出现此问题,就会有如下解决方案: 

①直接找APK厂商/同事寻求正确签名的版本. ---> 有次解决方案,那么你就不会来找啦 .

②完完全全靠自己去给APK重签名.

那么好, 任何APK编译出来后都具有各自的签名档.列如下图所示:

    signingConfigs {
        debug {
            storeFile file('platform.keystore')
            storePassword 'android'
            keyAlias 'platform'
            keyPassword 'android'
        }
        release {
            storeFile file('platform.keystore')
            storePassword 'android'
            keyAlias 'platform'
            keyPassword 'android'
        }
    }
那么好 第一步就是清除该APK的签名档: 

在Windows中利用减压软件直接打开该APK --- > 进入 META-INF\   路径 ,删除该路径下 MANIFEST.MF 以外的所有文件.(Tips: 提前备份APK)

执行以上操作后,该APK将无签名档,此时仍然无法安装,安装报错信息如下 : 

adb: failed to install F:\security\Demo.apk: Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES: Failed to collect certificates from /data/app/********** in manifest does not exist]

INSTALL_PARSE_FAILED_NO_CERTIFICATES: 无签名导致解析失败无法安装

此时,需要将此APK正确签名后重新安装, 那么签名方式有以下几种. 

第二步 APK重签名:
若有系统源码,可以直接AS修改签名配置文件,重新编译安装,最简单.

方法参考: Android Studio获取系统级签名方式_android studio 查看签名_Brave & Real的博客-CSDN博客

 下面讲的是无源码的操作流程:

需要找到机器源码路径  build/target/product/security 下的 platform.pk8  和 platform.x509.pem 两文件.

并将APK 和 signapk.jar 放置在同一路径下.

java -jar signapk.jar platform.x509.pem platform.pk8 Demo.apk Demo_Signed.apk 

通过 CMD 运行或转为 bat可执行档 运行均可生成对应的Demo_signed版本的APK 

需注意 此处的 platform.pk8  和 platform.x509.pem 需指定对应SDK路径下的签名档.

附件资源为 Android 8.1 SDK27 .

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Brave & Real

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值