app上传平台比较多像应用宝、豌豆荚、360、百度、小米、华为等。大部分公司一般也就选前四个,有的甚至只上传前两个(以前360审核要求比较多)。现在要上传20个平台,有些平台之前上传过但是运营人员离职后账号就找拿不到了。需求下载空包重新签名认证,我上传魅族的时候就碰到这个情况。
贴一下魅族应用认领说明
开发者应用认领说明
Flyme应用中心应用认领,采用Android的apk安装包签名机制来完成。如果你不清楚签名是什么,请联系开发人员协助您。
在Android平台发布应用程序之前,必须经过一个签名流程。现在您的密钥就是您的身份证明,您所要做的就是使用您的密钥,将我们提供给您的一款未经过签名的apk包签名后,发送给我们。
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
[您的证书名称] 是指您创建密钥时,您设置的证书名称
Linux和Mac OS X平台的签名方法:
- 打开
Terminal
程序 - 进入从魅族开放平台下载到的sign_verification.zip解压后的目录,例如
cd ~/Downloads/sign_verification
- 使用jarsigner签名
命令举例示例:
jarsigner -verbose -keystore ~/Workspace/mykeystore -signedjar ./meizuemptyapk-release-signed.apk ./meizuemptyapk-release-unsigned.apk meizu
这样就完成了,将签名后的包上传到魅族开放平台应用认领签名验证页面.
Windows平台签名方法:
- 打开
命令提示符
程序 - 进入从魅族开放平台下载到的sign_verification解压后的目录,例如
cd C:\Downloads\sign_verification
- 使用jarsigner签名
命令举例示例:
jarsigner -verbose -keystore C:\Downloads\sign_verification\mykeystore -signedjar meizuemptyapk-release-signed.apk meizuemptyapk-release-unsigned.apk meizu
这里郑重说一下windows的方法。之前签名一直报错jarsigner 错误: java.lang.RuntimeException: 密钥库加载: Invalid keystore format
明明按照文档做的,还是报错,后来发现
第一个红色的路径是keystore绝对路径,一开始我也弄错了,写成了keystore所在的目录路径了.
第二个红色的是别名,不是keystore的名字
比如我的签名是test1.keystore
别名是test2
那么应该是
jarsigner -verbose -keystore D:\signature\test2.keystore -signedjar meizuemptyapk-release-signed.apk meizuemptyapk-release-unsigned.apk test1
jarsigner -verbose -keystore [keystorePath] -signedjar [apkOut] [apkIn] [alias]
jarsigner命令格式:-verbose输出详细信息 -keystore密钥库位置 -signedjar要生成的文件 要签名的文件 密钥库文件
keystorePath参数代表keyStore的绝对路径,如D:\keystore\test2.keystore
apkOut参数代表签名后的apk路径,如D:\signed.apk
apkin参数代表在腾讯应用中心下载的未签名apk,默认名称为tap_unsign.apk
alias参数代表签名用的整数名称(创建keyStore时所填写的秘钥别名keyAlias),如test1
这样就完成了,将签名后的包上传到魅族开放平台应用认领签名验证页面.