天天看点

小米商城关于apk的重新签名(证书链、keystore、应用签名)

关于apk的重新签名(证书链、keystore、应用签名)

android中的签名文件和证书等等相关问题,有时真的很搞的。在小米的应用开发商店里,需要重新签名,前前后后花了一个多小时,才签名成功,所以就记录一下吧。

通过密钥keystore找到签名证书

1.我们把已经上架的应用(就是在各大应用市场,如豌豆荚、360)下载下来,改名为.zip或者.rar文件,解压。

2.打开,找到META-INF文件,其中有CERT.RSA ,CERT.SF , MANIFEST.MF。其中CERT.RSA就是证书文件。

3.运行命令行, keytool -printcert -file d:\CERT.RSA(证书文件路径),结果如下

小米商城关于apk的重新签名(证书链、keystore、应用签名)
查找证书别名

1.我们已经拥有证书CERT.RSA和签名密钥xxx.keystore

2.在Eclipse中,随便点击一个apk,用xxx.keystore去签名,可以看到证书别名

小米商城关于apk的重新签名(证书链、keystore、应用签名)

其中 qulordy key 就是证书别名。

通过证书别名和keystore查看完整的证书信息

其实第一步看见的证书信息其实是不完整的,现在我们可以看到完整的证书信息。

运行命令行,keytool -list -v -alias todayinfo(证书别名) -keystore jinghua.keystore(密钥)

小米商城关于apk的重新签名(证书链、keystore、应用签名)

这就是完整的证书信息了。

按要求重新签名apk

给apk包签名的方式有很多种,我们推荐您使用JDK自带的jarsigner工具来完成签名。jarsigner工具的命令格式是:

—- jarsigner的命令格式

jarsigner -verbose -keystore [您的私钥存放路径] -signedjar [签名后文件存放路径] [未签名的文件路径] [您的证书名称]

—- jarsigner的参数说明

-keystore 参数指定您的私钥的绝对路径,例如:c:\mykeystore

-signedjar 参数指定签名后apk文件存放绝对的路径,例如 c:\signed.apk

[未签名的文件路径] 指定要签名apk文件的绝对路径

[您的证书名称] 是指您创建密钥时,您设置的证书名称

小米商城关于apk的重新签名(证书链、keystore、应用签名)

这样,新的apk就签名完成了。

其中参考链接:http://www.cnblogs.com/QuLory/p/3141039.html

继续阅读