Android 无法使用jarsigner对apk文件进行签名
我正在使用以下命令对apk进行签名:Android 无法使用jarsigner对apk文件进行签名,android,command-line,apk,jarsigner,jar-signing,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/im
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
大多数论坛都提到,当我们收到上述错误消息时,我们应该通过添加-digestalgsha1来退出jar。但我已经有了,仍然得到同样的例外
尝试在设备上安装时,我收到消息
There is a problem parsing the package.
更新:
将算法从SHA1更改为SHA-256时,仍然会出现相同的异常,但这次是在xml文件上。验证您正在签名的apk是否最初未签名。如果没有,请使用IDE中的Android工具导出未签名版本