jarsigner -digestalg SHA1 -sigalg MD5withRSA -keystore debug.keystore -storepass android woxiangkan_debug.apk androiddebugkey
在签名时,要加上2个参数:
复制代码 代码如下:
-digestalg SHA1 -sigalg MD5withRSA 造成无法签名错误的原因,初步估计是JDK版本的问题。JDK 1.6签名没事,但是1.7会出这个问题。 完整的签名命令如下: 复制代码 代码如下:
jarsigner -verbose -keystore feelyou.keystore -storepass feelyou.info -signedjar signed.apk -digestalg SHA1 -sigalg MD5withRSA unsigned.apk feelyou 解释: 1、-keystore feelyou.keystore:指定需要使用的签名文件,直接写文件名说明在当前目录下,否则请自行指定具体路径
2、-storepass feelyou.info:自动输入密码,keystore的密码和alias的密码都是我用的都是feelyou.info 3、-signedjar signed.apk:指定签名后的文件存储路径,这里是说以signed.apk的文件名存在当前路径下 4、-digestalg SHA1 -sigalg MD5withRSA:这就是必须加上的参数,如果你是jdk 1.6也不受影响 5、unsigned.apk:未签名的apk路径,这里是当前路径下的unsigned.apk文件 6、feelyou:最后这个是alias 使用re-sign.jar去签名后APK安装包,在DOS下输入 jarsigner -keystore D:\Android\avd\.android\debug.keystore(安卓默认签名文件的所在位置) -storepass android -keypass android D:\Android\apk\02-AndroidCalculator-unsign.apk(去签名后APK安装包所在的位置) androiddebugkey 按enter键后输入 zipalign 4 D:\Android\apk\02-AndroidCalculator-unsign.apk(去签名后APK安装包所在的位置) D:\Android\apk\02-AndroidCalculator-sign.apk(重签名后APK安装包所在的位置) 对于jdk 1.7以后版本,签名稍有区别,DOS下输入的第一条指令需要加上参数:-digestalg SHA1 -sigalg MD5withRSA如下: jarsigner -digestalg SHA1 -sigalg MD5withRSA -keystore D:\Android\avd\.android\debug.keystore(安卓默认签名文件的所在位置) -storepass android -keypass android D:\Android\apk\02-AndroidCalculator-unsign.apk(去签名后APK安装包所在的位置) androiddebugkey 安卓默认的签名文件位置: win7:c:/user/.Android/debug.keystore xp: C:/Documents and Settings/user/.Android/debug.keystore |
|
来自: 白雪~~~ > 《APP自动化测试》