您的位置:首页 > 移动开发 > Android开发

Android release apk 签名流程

2016-10-10 19:36 489 查看
(1)查看keystore的信息

keytool -list -v -keystore xp.jks或者:keytool -list -keystore (keystore文件) -alias (key的别名) -v

(2)查看keystore的公钥证书信息

keytool -list -keystore (keystore文件) -alias (key的别名) -rfc(注:获取格式的公钥证书,RFC 1421)

(3)查看apk的签名信息

jarsigner -verify -verbose -certs <your_apk_path.apk>

1.制作keystore    //jarsigner和keytool全部都是在Jdk的安装包里边

keytool -genkey -alias test.keystore -keyalg RSA -validity 20000 -keystore test.keystore

注释:# -genkey 产生密钥# -alias test.keystore 别名 test.keystore -keyalg RSA 使用RSA算法对签名加密# -validity 20000 有效期限2000天# -test.keystore

输入密钥库口令:

再次输入新口令:

您的名字与姓氏是什么?

  []:

您的组织单位名称是什么?

  []:

您的组织名称是什么?

  []:

您所在的城市或区域名称是什么?

  [beijing]:

您所在的省/市/自治区名称是什么?

  [beijing]:

该单位的双字母国家/地区代码是什么?

  [china]:

CN=, OU=, O=, L=beijing, ST=beijing, C=china是否正确?

 [否]:Y

输入 <test.keystore> 的密钥口令

        (如果和密钥库口令相同, 按回车):

再次输入新口令:

keystore生成完毕

2.签名

jdk 在1.7以上

jarsigner -digestalg SHA1 -sigalg MD5withRSA -verbose -keystore test.keystore -signedjar app-arm-release-signed.apk app-arm-release-unsigned.apk test.keystore

jdk在1.7以下(含)

jarsigner -verbose -keystore test.keystore -signedjar app-arm-release-signed.apk app-arm-release-unsigned.apk vslink.keystore

输入密钥库的密码短语: (111111)

   正在添加: META-INF/MANIFEST.MF

   正在添加: META-INF/VSLINK_K.SF

   正在添加: META-INF/VSLINK_K.RSA

  正在签名: AndroidManifest.xml

  正在签名: classes.dex

  正在签名: lib/armeabi/libairplayer.so

  正在签名: lib/armeabi/libhpplayaudio.so

  正在签名: lib/armeabi/libjdns_sd.so

  正在签名: lib/armeabi/libturbojpeg.so

  正在签名: lib/armeabi/libnative.so

jar 已签名。

警告:

未提供 -tsa 或 -tsacert, 此 jar 没有时间戳。如果没有时间戳, 则在签名者证书的到期日期 (2071-07-14) 或以后的任何撤销日期之后, 用户可能无法验证此 jar。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息