4

我正在使用 Jenkins 构建我的 android 项目。我们使用Android Signing Plugin对 apk 进行签名。最近在一个分支上失败并显示以下错误日志:

[SignApksBuilder] /var/lib/jenkins/android-sdk/build-tools/29.0.2/zipalign -f -p 4 /var/lib/jenkins/workspace/Android/app/build/outputs/apk/production/release/app_productionRelease_0.11.1_HEAD_3048d80.apk /var/lib/jenkins/workspace/Android/SignApksBuilder-out/zipalign/aligned-app_productionRelease_0.11.1_HEAD_3048d80-1628945884194489230.apk
[Android] $ /var/lib/jenkins/android-sdk/build-tools/29.0.2/zipalign -f -p 4 /var/lib/jenkins/workspace/Android/app/build/outputs/apk/production/release/app_productionRelease_0.11.1_HEAD_3048d80.apk /var/lib/jenkins/workspace/Android/SignApksBuilder-out/zipalign/aligned-app_productionRelease_0.11.1_HEAD_3048d80-1628945884194489230.apk
FATAL: [SignApksBuilder] zipalign failed: exit code 1
ERROR: zipalign failed on APK /var/lib/jenkins/workspace/Android/app/build/outputs/apk/production/release/app_productionRelease_0.11.1_HEAD_3048d80.apk: exit code 1

这是一个发布版本,此分支上唯一有意义的更改是

  • 将android gradle 插件更新4.0.24.1.0
  • 将 gradle 更新6.1.16.5

任何人都可以阐明发生了什么问题吗?

PS:正如插件自述文件所说,我尝试将问题发布到Jenkins Jira,但似乎登录功能已损坏:/

谢谢!

4

3 回答 3

0

在与这个奇怪的问题作斗争后,我从降级4.1.04.0.2. 这解决了这个问题,看起来Jenkins 中的zipalign插件已经3 年没有更新了,也许这将在Jenkins中的zipAlignPlugin的下一次更新中得到解决。

于 2020-11-13T15:25:36.550 回答
0

我的解决方案是在 gradle 项目选项上使用 zipalign,效果很好,但我还没有尝试过在 Jenkins 中包含用于签名 apk 的 zipalign 的插件。

于 2021-01-14T19:23:02.113 回答
0

如果我理解正确运行 zipalign 至少在此问题线程中提到的最新 AGP 上不是必需的, 它可用于验证输出版本 apk 是否正确对齐。

zipalign -c -v 4 signed.apk
于 2020-12-08T02:27:21.763 回答