Android签名 (四) 实践 | INSTALL_PARSE_FAILED_NO_CERTIFICATES

这篇具有很好参考价值的文章主要介绍了Android签名 (四) 实践 | INSTALL_PARSE_FAILED_NO_CERTIFICATES。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. 问题描述

最近在安装一个apk时出现下面的报错:

adb: failed to install JackDemo.apk: Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES: Scanning Failed.: No signature found in package of version 2 or newer for package com.jack.demo]

安装环境:

应用目标版本:android:targetSdkVersion="30"

系统平台版本:Android 12(API级别32)

2. 原因分析

将上面的报错信息翻译一下,大概意思是说在包名为com.jack.demo的JackDemo.apk中未发现V2或者更高版本的签名。

3. 解决方案

根据上面的原因,我们知道要解决这个问题,应用的签名版本至少需要是V2或更高版本。

以下是一个示例的配置代码,用于启用V2签名版本:

android {
    // 其他配置项...
    
    // 启用V2签名版本
    signingConfigs {
        release {
            // release签名配置
            // ...
            v2SigningEnabled true
        }
        debug {
            // debug签名配置
            // ...
            v2SigningEnabled true
        }
    }
    
    // 其他配置项...
    
    buildTypes {
        release {
            // release构建类型配置
            // ...
            signingConfig signingConfigs.release
        }
        debug {
            // debug构建类型配置
            // ...
            signingConfig signingConfigs.debug
        }
    }
}

进行上述配置后,重新打包apk安装成功!!!

4. 根因追溯

从Android 11(API级别30)开始,Google Play要求所有新提交的应用使用应用签名方案v2(APK Signature Scheme v2)或更高版本。因此,对于目标版本为30的应用程序,应用签名版本必须为V2或更高。这样做可以提高应用的安全性和验证性。

用以下2个案例增强理解:

案例1:使用V1即可

    <uses-sdk
        android:minSdkVersion="28"
        android:targetSdkVersion="29" />

 案例2:需要使用签名方案v2或更高版本

    <uses-sdk
        android:minSdkVersion="28"
        android:targetSdkVersion="30" />

5. 智慧之源

应用签名  |  Android 开源项目  |  Android Open Source Project

Android apk之v1、v2、v3签名 - 知乎

android - What is INSTALL_PARSE_FAILED_NO_CERTIFICATES error? - Stack Overflow文章来源地址https://www.toymoban.com/news/detail-824808.html

到了这里,关于Android签名 (四) 实践 | INSTALL_PARSE_FAILED_NO_CERTIFICATES的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Android APK 签名打包原理分析(二)【Android签名原理】

    说到签名,从这个词来理解,正常个人需要签名的时候,一般是用来证明这是某个人的特属认证。 大家是否有印象?还记得我们之前在学习、总结网络相关知识的时候,说到过,客户端和服务端虽然通信数据上,可以采用对称加密和非对称加密组合去进行数据的加密,但是这

    2024年01月18日
    浏览(51)
  • Android查看签名信息系列 · 使用Android Studio获取签名

    前言 Android查看签名信息系列 之使用Android Studio获取签名,通过Android Studio自带的gradle来获取签名信息。 优点:此法可查看 MD5、SHA1 等信息。 缺点:升级某个Studio版本后,没有签名任务了,特别不方便。 实现方法 一、使用 Android Studio 创建gradle获取签名信息。 1、使用 Androi

    2024年02月07日
    浏览(46)
  • Android签名 一 查看签名信息

    你可能想知道 通过这篇文章可以解决哪些问题以及学到什么:  1.如果我们有一个应用,如何查看应用的签名信息?  2.如果我们有签名原始文件,如何查看签名文件中的签名信息? 这篇文章介绍了如何查看应用和签名文件中的签名信息。 keytool -list -printcert -jarfile [APK文件路

    2024年02月03日
    浏览(31)
  • Solidity合约中签名验证的一点实践

    在目前NFT概念国内外火爆的背景下,涌现了很多项目,特别是公链以太坊上,社区与新团队更是层出不穷,让人眼花缭乱。 而一个新项目上线的成功与否,往往与其社区支持力度息息相关。现在很多新项目方为了拥有更多的热度,人为的设置了白名单这个玩法和门槛,于是我

    2024年02月08日
    浏览(42)
  • 【Android签名机制详解】二:Android V1、V2、V3、V4签名方案

    书接上回【Android签名机制详解】一:密码学入门,在了解了消息摘要、非对称加密、数字签名、数字证书的基本概念后,我们趁热打铁、直奔主题,讲解签名在Android中的实际应用。 Android的数字证书(.der 或 .pem )是存放在密钥库文件(.jks 或 .keystore)当中的,而 数字证书作

    2024年02月12日
    浏览(32)
  • Android 如何获取系统签名 并使用系统签名

    1.将源码路径下 buildtargetproductsecurity platform.pk8 和 platform.x509.pem 复制出来放在同一目录下 2.执行命令 后生成 platform.pem 3.行命令生成   platform.pk12 这里需要输入两次密码   4.执行命令 ,生成keystore keytool -importkeystore -deststorepass 123456 -destkeypass 123456 -destkeystore debug.keystore

    2024年02月11日
    浏览(37)
  • Android 签名方法---同时使用V1和V2签名

            V1签名(jar signature):         V1是Android7.0之前的签名方式,使用JDK中的jar signature方式对APK进行签名打包。签名完成后会生成一个META-INF文件夹,里面有三个文件:MANIFEST.MF,CERT.RSA,CERT.SF,是用来记录签名信息的。简单来说V1 签名是对压缩包中单个文件签名验证

    2024年02月03日
    浏览(27)
  • Android查看签名信息系列 · 使用逆向分析工具JadxGUI获取签名

    前言 Android查看签名信息系列之使用逆向分析工具JadxGUI获取签名,通过这种方式,可以获取到的签名信息包括:MD5、SHA1、SHA-256、公钥(模数)等信息 实现方法 1、进入JadxGUI目录下的lib文件夹内,找到jadx-gui-1.4.7.jar文件 2、双击jadx-gui-1.4.7.jar进入图形界面,或者cmd进入lib所在路径

    2024年02月03日
    浏览(44)
  • PHP实践:用openssl打造安全可靠的API签名验证系统

    🏆作者简介,黑夜开发者,全栈领域新星创作者✌,CSDN博客专家,阿里云社区专家博主,2023年6月CSDN上海赛道top4。 🏆数年电商行业从业经验,历任核心研发工程师,项目技术负责人。 🏆本文已收录于PHP专栏:PHP进阶实战教程。 🏆另有专栏PHP入门基础教程,希望各位大佬

    2024年02月14日
    浏览(39)
  • Android 系统签名

    查看签名信息的几种方法 一、查看apk签名信息的两种方式 1.通过.Apk文件的 CERT.RSA查看 将.apk文件 重命名为 .rar ,然后解压 - 解压后的文件目录:META-INF/CERT.RSA 命令行中使用 keytool -printcert -file **/cert.rsa  查看签名信息 2.直接使用keytool 查看apk签名信息 命令行中使用 keytool -pri

    2024年02月14日
    浏览(21)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包