在上架国内某些应用市场时,应用市场会要求用我们的签名文件去给它们提供的空包签名后再上传。
终端的命令行:
jarsigner -verbose -keystore [keystorePath] -signedjar [apkOut] [apkIn] [alias]
其中:
- [keystorePath] 为签名文件的位置
- [apkOut] 为输出的包文件名
- [apkIn] 为需要签名的包的文件名
- [alias] 为我们的签名文件的别名
如果别名输错了会报错,错误信息为:
jarsigner: 找不到test的证书链。test必须引用包含私有密钥和相应的公共密钥证书链的有效密钥库密钥条目
示例为:
jarsigner -verbose -keystore abc.keystore -signedjar signed.apk no_sign.apk test
test是输入错误的别名。
最好将待签名的包和keystore签名文件放至同一文件夹下,这样直接cd到该文件夹下输入命令行时就不需要附带路径信息了。