您的位置:首页 > 移动开发 > Android开发

命令行jarsigner签字

2016-02-29 18:24 232 查看
Android 微信现在不支持二维码扫描下载APP了,为了满足使用微信二维码扫描下载,知乎上给出了2种解决方案:1.把APK上传到腾讯的应用宝,然后生成对应的下载链接二维码;2.为屏蔽的APK下载链接做个中间页面,提示用户在系统浏览器里打开。于是我注册了个腾讯开放平台的账号,然后上传,结果竟然是和安卓市场上的同一款产品冲突了,平台给出了认领APP方案,要把已有的 .apk包通过签名的方式放到一个空的包中,这样就得使用jarsigner 签名了。中途也走好多弯路,下面我把自己的一些操作方法分享给大家,希望能够给需要的童鞋提供帮助1、首先 打开控制台,输入 jarsigner空格-help,查看 jarsigner的 帮助信息[-keystore <url>]           密钥库位置[-storepass <口令>]         用于密钥库完整性的口令[-storetype <类型>]         密钥库类型[-keypass <口令>]           私有密钥的口令 (如果不同)[-certchain <文件>]         替代证书链文件的名称[-sigfile <文件>]           .SF/.DSA 文件的名称[-signedjar <文件>]         已签名的 JAR 文件的名称[-digestalg <算法>]        摘要算法的名称[-sigalg <算法>]           签名算法的名称[-verify]                   验证已签名的 JAR 文件[-verbose[:suboptions]]     签名/验证时输出详细信息。                            子选项可以是 all, grouped 或 summary[-certs]                    输出详细信息和验证时显示证书[-tsa <url>]                时间戳颁发机构的位置[-tsacert <别名>]           时间戳颁发机构的公共密钥证书[-altsigner <类>]           替代的签名机制的类名[-altsignerpath <路径列表>] 替代的签名机制的位置[-internalsf]               在签名块内包含 .SF 文件[-sectionsonly]             不计算整个清单的散列[-protected]                密钥库具有受保护验证路径[-providerName <名称>]      提供方名称[-providerClass <类>        加密服务提供方的名称 [-providerArg <参数>]]... 主类文件和构造器参数[-strict]                   将警告视为错误2、输入 jarsigner -verbose -keystore 【需要使用的keystore路径 eg.
/Volumes/Study/xxx.keystore】 -signedjar 【需要输出的.apk路径 eg./Desktop/yingyongbao/xxx.apk】【需要输入的.apk路径 eg./Desktop/yingyongbao/tap_unsign.apk】'alias别名 eg.meteodata'
 3、怎么寻找别名并且能保证 alias是有效可用的呢?最好是在eclipse中看一下4、做完这些后就需要输入密钥了, 这个密钥是 keystore的那个密钥,有的电脑在控制台上是不显示密钥的,但它已经被输入进去了,直接回车就好5、检查无误后就可以回车重新签名了

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Keytool android