无法使用jarsigner

时间:2015-11-16 20:35:10

标签: android command-line apk jarsigner jar-signing

我使用以下命令签署我的apk:

jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore mykeystore.keystore myApp.apk aliasname

日志以

结尾
.
.
.
signing: org/achartengine/image/zoom-1.png
signing: org/achartengine/image/zoom_in.png
signing: org/achartengine/image/zoom_out.png
signing: LICENSE.txt
signing: assets/cpwrUEM-instr-runtime.properties
jar signed.

但是当我运行验证命令时:

jarsigner -verify -verbose -certs myApp.apk

我收到以下错误:

jarsigner: java.lang.SecurityException: invalid SHA1 signature file digest for res/drawable-hdpi-v4/btn_large.png

大多数论坛都提到,当我们收到上述错误消息时,我们应该通过添加-digestalg SHA1来重新签名jar。但是我已经有了这个并且仍然得到了同样的例外。

尝试在设备上安装时,我收到消息

There is a problem parsing the package.

UPDATE:

在将算法从SHA1更改为SHA-256时,它仍然会给我相同的异常,但这次是在xml文件上。

1 个答案:

答案 0 :(得分:1)

验证您签名的apk是否最初未签名。如果没有,请使用IDE中的Android工具导出未签名的版本。