【问题标题】:JenkinsCI : zipalign failed on APK : exit code 1JenkinsCI:APK 上的 zipalign 失败:退出代码 1
【发布时间】:2021-02-22 01:10:33
【问题描述】:

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

[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.2更新为4.1.0
  • 将 gradle 从 6.1.1 更新为 6.5

谁能解释一下出了什么问题?

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

谢谢!

【问题讨论】:

  • TBF,我不认为 AGP 版本是真正的问题。对于这个特定的项目,解决方案是降级到4.0.2,但是我们还有另一个项目,AGP 4.0.2 和 gradle 6.1.1 失败

标签: android jenkins gradle android-gradle-plugin zipalign


【解决方案1】:

在解决了这个奇怪的问题后,我从4.1.0 降级到4.0.2。这解决了 Jenkins 中的 zipalign 插件在 3 年 内没有更新的问题,也许这将在 zipAlignPlugin 的下一次更新中得到解决> 在 Jenkins 中。

【讨论】:

  • android签名插件内部是否使用zipAlignPlugin?
  • 我的 gradle 插件 4.1.1 和 gradle 版本 6.7.1 也有这个问题。好像插件有bug?
  • 是的,它确实在内部使用了 zip align
  • 使用来自构建工具 29.0.2 w/Jenkins 的外部 zipalign,同样的问题
  • Zeems最近在zipalign中解决了,不知道怎么用issuetracker.google.com/issues/162117652#comment21
【解决方案2】:

如果我理解正确运行 zipalign 至少在此 issue thread 中提到的最新 AGP 上是不必要的 可以用来验证输出的release apk是否正确对齐。

zipalign -c -v 4 signed.apk

【讨论】:

    【解决方案3】:

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

    【讨论】:

      猜你喜欢
      • 2021-02-11
      • 1970-01-01
      • 2020-02-14
      • 2017-07-14
      • 2018-04-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-11
      相关资源
      最近更新 更多