• jarsigner和apksigner对apk/aab签名


    1、查看签名文件的信息

    工具目录:C:\Program Files\Java\jre1.8.0_331\bin

    keytool -list -v -keystore E:\test.jks
    

    输入该命令,然后输入密码,即可查看签名信息
    在这里插入图片描述

    2、签名工具

    签名工具说明位置
    jarsignerJDK提供的针对jar包签名的通用工具,签名apk仅限v1C:\Program Files\Java\jdk-16.0.2\bin\jarsigner.exe
    apksignerGoogle官方提供的针对Android apk签名及验证的专用工具,只能签名apk,支持v1v2C:\Users\leon\AppData\Local\Android\Sdk\build-tools\29.0.2\apksigner.bat

    注:jarsigner、apksigner既可以签名,也可以验证签名

    注:apksigner只能操作apk; jarsigner可以操作apk、aab

    命令参数解释

    为了方便演示,将签名工具jarsigner.exe与代签名的包置于同一个文件夹
    在这里插入图片描述

    1)jarsigner 签名

    jarsigner -verbose -keystore keystore文件 -signedjar 签名以后的apk名称 要签名的apk  keystore中的别名
    

    签名aab

    jarsigner -verbose -keystore signing_key.keystore -signedjar signedjar.aab unsigned.aab wftsign
    

    在这里插入图片描述

    签名apk

    jarsigner -verbose -keystore signing_key.keystore -signedjar signedjar.apk unsigned.apk wftsign
    

    在这里插入图片描述

    2)apksigner 签名

    apksigner sign --ks keystore位置 --v3-signing-enabled false apk位置
    
    apksigner sign --ks sign\signing_key.keystore --v3-signing-enabled false sign\unsigned.apk
    

    在这里插入图片描述

    注:
    –v1-signing-enabled //是否开启V1签名,默认开启(例如:true-开启,false-关闭)
    –v2-signing-enabled //是否开启V2签名,默认开启 (例如:true-开启,false-关闭)
    –v3-signing-enabled //是否开启V3签名,默认开启 (例如:true-开启,false-关闭)

    3、验证签名

    1)jarsigner 验证

    jarsigner -verify -verbose -certs apk或aab位置
    
    jarsigner -verify -verbose -certs test\unsigned.aab
    

    验证未签名aab
    在这里插入图片描述
    验证已签名aab
    在这里插入图片描述
    在这里插入图片描述

    2)apksigner 验证

    apksigner verify -v apk位置
    
    apksigner verify -v test\unsigned.apk
    

    验证未签名的apk
    在这里插入图片描述

    验证已签名apk (jarsigner方式签名)
    v1

    apksigner verify -v sign\signedjar.apk
    

    在这里插入图片描述

    验证已签名apk (apksigner方式签名)
    v1v2

    apksigner verify -v sign\signedapk.apk
    

    在这里插入图片描述

    验证已签名apk (aab jarsigner签名 转apk)
    v1v2v3

    apksigner verify -v sign\abb2apk_jarsigner.apk
    

    在这里插入图片描述

    4、重签名

    在这里插入图片描述

    如果是签名的aab转apk含v1v2v3签名,但平台只支持v1v2签名的apk,则可用重签名的方式,将aab转的含v1v2v3签名的apk更换为含v1v2签名的apk

  • 相关阅读:
    Misc入门干货
    根据视频编码时间批量重命名视频文件
    数字集成电路设计(四、Verilog HDL数字逻辑设计方法)(一)
    springMvc51-json数据类型提交
    html2canvs的一些问题
    STM32基于HAL库的串口接受中断和空闲中断
    【数据结构】顺序表+链表
    java框架 Mybatis介绍与入门案例
    【拆解Vue3】渲染器是如何实现的(下篇)?
    【线性代数】6.4 exercise20
  • 原文地址:https://blog.csdn.net/weixin_41733225/article/details/125546173