From 40ec05b5b4256c5a798731c4d8b329209cb9f7e8 Mon Sep 17 00:00:00 2001 From: LoveSy Date: Tue, 2 Sep 2025 23:31:12 +0800 Subject: [PATCH 1/3] Add step to sign Android release in workflow --- .github/workflows/android.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml index 21d789667d..f738b7d794 100644 --- a/.github/workflows/android.yml +++ b/.github/workflows/android.yml @@ -45,6 +45,16 @@ jobs: echo 'org.gradle.jvmargs=-Xmx2048m' >> gradle.properties echo 'android.native.buildOutput=verbose' >> gradle.properties ./gradlew -PappVerName=${{ env.VERSION }} assembleRelease assembleDebug + - name: Sign Android release + if: success() + id: sign + uses: r0adkll/sign-android-release@v1.0.4 + with: + releaseDirectory: app/release + signingKeyBase64: ${{ secrets.SIGNING_KEY }} + alias: ${{ secrets.ALIAS }} + keyStorePassword: ${{ secrets.KEY_STORE_PASSWORD }} + keyPassword: ${{ secrets.KEY_PASSWORD }} - name: Upload built apk if: success() uses: actions/upload-artifact@v4 From 73d42d647296ef4bc13165b99a2a9b7e700a1c7a Mon Sep 17 00:00:00 2001 From: LoveSy Date: Tue, 2 Sep 2025 23:40:49 +0800 Subject: [PATCH 2/3] Add signing key writing step to Android workflow --- .github/workflows/android.yml | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml index f738b7d794..97274f58fe 100644 --- a/.github/workflows/android.yml +++ b/.github/workflows/android.yml @@ -36,6 +36,17 @@ jobs: with: key: ${{ runner.os }}-${{ github.sha }} restore-keys: ${{ runner.os }} + - name: Write key + if: ${{ ( github.event_name != 'pull_request' && github.ref == 'refs/heads/master' ) || github.ref_type == 'tag' }} + run: | + if [ ! -z "${{ secrets.SIGNING_KEY }}" ]; then + echo 'Writing sign key' + echo releaseStorePassword='${{ secrets.KEY_STORE_PASSWORD }}' >> gradle.properties + echo releaseKeyAlias='${{ secrets.ALIAS }}' >> gradle.properties + echo releaseKeyPassword='${{ secrets.KEY_PASSWORD }}' >> gradle.properties + echo releaseStoreFile='key.jks' >> gradle.properties + echo ${{ secrets.SIGNING_KEY }} | base64 --decode > key.jks + fi - name: Build with Gradle run: | sudo rm -rf $ANDROID_HOME/cmake @@ -45,16 +56,6 @@ jobs: echo 'org.gradle.jvmargs=-Xmx2048m' >> gradle.properties echo 'android.native.buildOutput=verbose' >> gradle.properties ./gradlew -PappVerName=${{ env.VERSION }} assembleRelease assembleDebug - - name: Sign Android release - if: success() - id: sign - uses: r0adkll/sign-android-release@v1.0.4 - with: - releaseDirectory: app/release - signingKeyBase64: ${{ secrets.SIGNING_KEY }} - alias: ${{ secrets.ALIAS }} - keyStorePassword: ${{ secrets.KEY_STORE_PASSWORD }} - keyPassword: ${{ secrets.KEY_PASSWORD }} - name: Upload built apk if: success() uses: actions/upload-artifact@v4 From 11c81951fd810f52a6530ea1694c5253fe92b8b5 Mon Sep 17 00:00:00 2001 From: LoveSy Date: Tue, 2 Sep 2025 23:43:46 +0800 Subject: [PATCH 3/3] Fix quoting for SIGNING_KEY in android.yml --- .github/workflows/android.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/android.yml b/.github/workflows/android.yml index 97274f58fe..0920d75134 100644 --- a/.github/workflows/android.yml +++ b/.github/workflows/android.yml @@ -45,7 +45,7 @@ jobs: echo releaseKeyAlias='${{ secrets.ALIAS }}' >> gradle.properties echo releaseKeyPassword='${{ secrets.KEY_PASSWORD }}' >> gradle.properties echo releaseStoreFile='key.jks' >> gradle.properties - echo ${{ secrets.SIGNING_KEY }} | base64 --decode > key.jks + echo '${{ secrets.SIGNING_KEY }}' | base64 --decode > key.jks fi - name: Build with Gradle run: |