今天想把本身开发的应用上传到腾讯的开放平台,却发现应用的包明冲突了。原来是之前申请的腾讯开放平台已经上传过一次这个应用了。没办法,只能经过腾讯的应用认领来把这个应用来认领到当前的这个帐号。下面我就吧认领过程当中遇到的一些问题总结一下。
【Android】命令行jarsigner签字和解决找不到证书链错误 一、签名失败算法
$jarsigner -verbose -keystore /Volumes/Study/resourcesLib/Qunero-achivements/AndroidApp/QuLordy-signed-key -signedjar ./signed_XiaomiVerify.apk ./XiaomiVerify.apk qulordy 输入密钥库的口令短语: jarsigner: 找不到 qulordy 的证书链。qulordy 必须引用包含专用密钥和相应的公共密钥证书链的有效密钥库密钥条目。eclipse
二、查看帮助ide
复制代码 $jarsigner -h 用法:jarsigner [选项] jar 文件别名(key的别名) jarsigner -verify [选项] jar 文件函数
[-keystore <url>] 密钥库位置加密
[-storepass <口令>] 用于密钥库完整性的口令url
[-storetype <类型>] 密钥库类型命令行
[-keypass <口令>] 专用密钥的口令(若是不一样)code
[-sigfile <文件>] .SF/.DSA 文件的名称xml
[-signedjar <文件>] 已签名的 JAR 文件的名称图片
[-digestalg <算法>] 摘要算法的名称
[-sigalg <算法>] 签名算法的名称
[-verify] 验证已签名的 JAR 文件
[-verbose] 签名/验证时输出详细信息
[-certs] 输出详细信息和验证时显示证书
[-tsa <url>] 时间戳机构的位置
[-tsacert <别名>] 时间戳机构的公共密钥证书
[-altsigner <类>] 替代的签名机制的类名
[-altsignerpath <路径列表>] 替代的签名机制的位置
[-internalsf] 在签名块内包含 .SF 文件
[-sectionsonly] 不计算整个清单的散列
[-protected] 密钥库已保护验证路径
[-providerName <名称>] 提供者名称
[-providerClass <类> 加密服务提供者的名称 [-providerArg <参数>]] ... 主类文件和构造函数参数 复制代码
三、寻找签名别名:
首先,在用eclipse进行导出的时候是成功的。因此尝试从新导出应用能够看到别名,以下个人是 'qulordy key' :
四、从新签名:
复制代码 $jarsigner -verbose -keystore /Volumes/Study/resourcesLib/Qunero-achivements/AndroidApp/QuLordy-signed-key -signedjar ./signed_XiaomiVerify.apk ./XiaomiVerify.apk 'qulordy key' 输入密钥库的口令短语: 正在添加: META-INF/MANIFEST.MF 正在添加: META-INF/QULORDY_.SF 正在添加: META-INF/QULORDY_.RSA 正在签名: AndroidManifest.xml 正在签名: classes.dex 正在添加: res/ 正在添加: res/drawable/ 正在签名: res/drawable/icon.png 正在添加: res/layout/ 正在签名: res/layout/main.xml 正在签名: resources.arsc 复制代码