• apk签名文件生成


    一、生成签名文件

    命令:

    keytool -genkey -v -keystore 签名文件名称.keystore -alias 签名文件别名 -keyalg RSA -keysize 2048 -validity 20000
    
    例如:
    keytool -genkey -v -keystore release-key.keystore -alias als-key -keyalg RSA -keysize 2048 -validity 20000
    -keystore release-key.keystore       在当前目录下创建release-key.keystore签名文件
    -alias als-key                       文件别名为als-key,不配置则默认为mykey
    -keyalg RSA -keysize 2048            采用的RSA算法生成2048位RSA密钥和签名证书
    -validity 20000                      证书的有效期是20000天

    创建过程如图

    二、使用签名文件签名

    jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore 签名文件所在目录 apk文件所在目录 签名文件别名

    注意文件存放路径的书写,不同工具路径书写方式不同 

    如果使用git工具Git Bash运行命令

    $ jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore release-key.keystore /d/CordovaProjectIALP/platforms/android/app/build/outputs/apk/release/app-release-unsigned.apk ialp-key

    如果使用Windows自带的命名工具

    jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore release-key.keystore D:CordovaProjectIALPplatformsandroidappuildoutputsapk
    eleaseapp-release-unsigned.apk ialp-key

    签名的时候要求输入密钥库的密码

    当然如果将签名文件拷贝到apk所在目录下,就没有路径问题

    进入文件所在目录
    
    $ jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore release-key.keystore app-release-unsigned.apk ialp-key

    Git Bash也可以配置快捷命令对apk进行签名

    修改配置文件,添加快捷命令
    
    $ vim ~/.bashrc
    # 文件中添加以下命令
    alias sign-ialp="jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore /d/CordovaProjectIALP/release-key.keystore /d/CordovaProjectIALP/platforms/android/app/build/outputs/apk/release/app-release-unsigned.apk ialp-key"
    # 使配置文件立即生效
    $ source ~/.bashrc
    # 运行以下快捷命令即可对apk文件进行签名
    $ sign-ialp

     三、查看签名文件信息

    命令:

    keytool -list -v -keystore [签名文件]
    $ keytool -list -v -keystore release-key.keystore

  • 相关阅读:
    Less学习笔记
    如何在网页启动Windows服务
    让VS2010记住TFS的登陆用户名和密码
    调式WP程序报0x80131500错误的解决办法
    FizzBuzzWhizz是算法题吗?我从设计的角度去解决的。
    基于Roslyn的远程任务平台
    优雅就一个字——设计模式之数据上传接口
    关于反射优化的疑问,单次调用时直接反射要快于委托调用反射?
    用VC++11中编译libthrift项目
    grunt初体验
  • 原文地址:https://www.cnblogs.com/VoiceOfDreams/p/11777751.html
Copyright © 2020-2023  润新知