Android工程APK签名

作者 qiuzhong 日期 2016-07-02
Android工程APK签名

简单来说,签名可以保证我们的应用可以正常升级,并且不被别人覆盖.算是一个标识.

常用工具

  • keytool 是个密钥和证书管理工具,可以用来生成证书.
  • jarsigner 工具利用密钥仓库中的信息来产生或校验 Java 存档 (JAR) 文件的数字签名
  • 使用keytool生成签名 keytool -genkey -keystore test.keystore -alias test -keyalg RSA -validity 10000

参数解释

-genkey 产生证书文件
-keystore 指定密钥库的.keystore文件中
-keyalg 指定密钥的算法,这里指定为RSA(非对称密钥算法)
-validity 为证书有效天数,这里我们写的是10000天
-alias 产生别名

查看生成的签名文件

keytool -list -keystore test.keystore
使用jarsigner签名 jarsigner -verbose -keystore test.keystore -signedjar -signed.apk unsigned.apk test

  • -verbose:指定生成详细输出
  • -keystore:指定数字证书存储路径
  • -signedjar:该选项的三个参数为 签名后的apk包 未签名的apk包 数字证书别名