jarsigner签名报错Invalid keystore format

由于之前在魅族市场的APK包都不是自己上传的,而是魅族从其他安卓市场帮拉去过来了.

所以需要我们自己去认领APK包.

这个时候就需要按照魅族给的未签名测试包给重新签名然后提交审核了.

1:看完以下说明

jarsigner简单使用说明

jarsigner -verbose -keystore ~/Workspace/mykeystore -signedjar ./meizuemptyapk-release-signed.apk ./meizuemptyapk-release-unsigned.apk meizu

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

# jarsigner的命令格式

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

#jarsigner的参数说明

-keystore 参数指定您的私钥的绝对路径,例如:c:mykeystore
-signedjar 参数指定签名后apk文件存放绝对的路径,例如 c:signed.apk
[未签名的文件路径] 指定要签名apk文件的绝对路径,也就是您从我们这里下载到的,例如 c:meizuemptyapk-release-unsigned.apk
[您的证书名称] 是指您创建密钥时,您设置的证书名称

jarsigner -verbose -keystore /Users/liuxing/Desktop/sign_verification/hdkey/hdhd.jks -signedjar /Users/liuxing/Desktop/sign_verification/apks/meizuemptyapk-release.apk /Users/liuxing/Desktop/sign_verification/nosign/meizuemptyapk-release-unsigned.apk androidkey

如果填写错,那么可能会导致报错Invalid keystore format

2:解决办法 看下面的注释就懂了

 

jarsigner -verbose -keystore 

/Users/liuxing/Desktop/sign_verification/hdkey/hdhd.jks //签名文件的绝对路径(而非文件夹的路径)

-signedjar 

/Users/liuxing/Desktop/sign_verification/apks/meizuemptyapk-release.apk  (签名后的文件绝对路径:自己设置就好)

/Users/liuxing/Desktop/sign_verification/nosign/meizuemptyapk-release-unsigned.apk (未签名的魅族提供的APK文件绝对路径)

androidkey  (签名key里面的别名alias)

 

 

原文地址:https://www.cnblogs.com/china-soft/p/5276718.html