无法使用 github 操作工作流中的 'r0adkll/sign-android-release@v1' 签署 AAB 文件

Unable to sign AAB file using 'r0adkll/sign-android-release@v1' in github action workflow

我在 Github 工作流程中签署 APK 时遇到以下错误。

以下是 github 工作流程中的一些日志详细信息:

Run r0adkll/sign-android-release@v1 with:

releaseDirectory: app/release signingKeyBase64: ***

alias: ***

keyStorePassword: ***

keyPassword: ***

env: JAVA_HOME_8.0.275_x64: /opt/hostedtoolcache/jdk/8.0.275/x64 JAVA_HOME: /opt/hostedtoolcache/jdk/8.0.275/x64 JAVA_HOME_8_0_275_X64: /opt/hostedtoolcache/jdk/8.0.275/x64 BUILD_TOOLS_VERSION: 30.0.2

Preparing to sign key @ app/release with signing key

**/opt/hostedtoolcache/jdk/8.0.275/x64/bin/jarsigner -keystore app/release/signingKey.jks -storepass *** -keypass *** app/release/app-release.aab *****

这是错误的部分: jarsigner:无法签署 jar:

java.util.zip.ZipException: invalid entry compressed size (expected 38206 but got 38984 bytes) Error: The process '/opt/hostedtoolcache/jdk/8.0.275/x64/bin/jarsigner' failed with exit code 1

我相信它对 jar signer 非常具体,(我尝试使用它解决问题的答案)

更新:这也发生在我身上。

您需要将您的 KeyStore、别名、KeyStore 密码和密钥密码保存在 GitHub 设置的秘密部分。

  • SIGNING_KEY — Keystore 文件的 base64 文本
  • ALIAS — 您的别名
  • KEY_STORE_PASSWORD — 您的密钥库的密码
  • KEY_PASSWORD — 你的密钥密码

- name: Sign AAB
  id: sign
  uses: r0adkll/sign-android-release@v1
  with:
    releaseDirectory: app/build/outputs/bundle/release
    signingKeyBase64: ${{ secrets.SIGNING_KEY }}
    alias: ${{ secrets.ALIAS }}
    keyStorePassword: ${{ secrets.KEY_STORE_PASSWORD }}
    keyPassword: ${{ secrets.KEY_PASSWORD }}

r0adkll/sign-android-release