欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

jarsigner重新签名apk无法安装的解决方法

程序员文章站 2022-06-04 12:17:31
因为一些原因,要给未签名的apk重新签名,需要用到jarsigner工具,但是签名之后,apk无法安装,百思不得其解。终于找到一个解决方案,现在分享给大家: 在签名时,要...

因为一些原因,要给未签名的apk重新签名,需要用到jarsigner工具,但是签名之后,apk无法安装,百思不得其解。终于找到一个解决方案,现在分享给大家:

在签名时,要加上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