阅读更多
在给生成的apk签名,jdk1.6升级到jdk1.7会出现以下问题:
1.明明签名了,并且签名检查apk中也有签名文件,但是安装的时候就是提示安装失败,没有签名,解决办法
将签名命令上加一段话: -digestalg SHA1 -sigalg MD5withRSA 加上后就可以了
旧:jarsigner -keystore test.keystore -storepass test123 -signedjar signed_client.apk client.apk test
新:jarsigner -digestalg SHA1 -sigalg MD5withRSA -keystore test.keystore -storepass test123 -signedjar signed_client.apk client.apk test
这样签名完成后就可以安装成功了。
2.以上方法可以解决签名后不能安装成功的问题,但是会发现有警告:
警告:
未提供 -tsa 或 -tsacert, 此 jar 没有时间戳。如果没有时间戳, 则在签名者证书的到期
日期 (2063-07-18) 或以后的任何撤销日期之后, 用户可能无法验证此 jar。
入有这个警告的话本身对签名没有影响,但是总感觉怪怪的,要想去掉这个警告只要在命令上再加上 -tsa https://timestamp.geotrust.com/tsa 就可以了
最终命令是:
jarsigner -digestalg SHA1 -sigalg MD5withRSA -tsa https://timestamp.geotrust.com/tsa -keystore test.keystore -storepass test123 -signedjar signed_client.apk client.apk test