android安装apk必须输入密码,jarsigner重新签名apk无法安装的解决方法

本文详细介绍了在使用不同JDK版本进行APK签名时遇到的问题。在JDK1.7中,使用`-digestalg SHA1 -sigalg MD5withRSA`参数会导致签名错误,而在JDK1.6中则没有此问题。解决方法是根据JDK版本调整签名命令。完整签名命令包括指定keystore、storepass、signedjar、unsignedapk以及alias等信息。对于JDK1.7及以上版本,需要添加特定参数。最后,文章还提供了Android默认签名文件的路径以及重新签名APK的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值