diff --git a/.github/workflows/release-apk.yml b/.github/workflows/release-apk.yml index 9d7ad47..35e4d8a 100644 --- a/.github/workflows/release-apk.yml +++ b/.github/workflows/release-apk.yml @@ -229,17 +229,17 @@ jobs: - name: ๐Ÿ”‘ Setup Keystore if: steps.check-existing.outputs.skip-build == 'false' run: | - # Create keystore from secrets - echo "${{ secrets.RELEASE_KEYSTORE_BASE64 }}" | base64 -d > android/app/release-key.jks - - # Create keystore.properties + # Create keystore.properties with base64 encoded keystore cat > android/keystore.properties << EOF - storeFile=release-key.jks - storePassword=${{ secrets.RELEASE_STORE_PASSWORD }} - keyAlias=${{ secrets.RELEASE_KEY_ALIAS }} - keyPassword=${{ secrets.RELEASE_KEY_PASSWORD }} + # Android Release Signing Configuration + RELEASE_KEYSTORE_BASE64=${{ secrets.RELEASE_KEYSTORE_BASE64 }} + RELEASE_STORE_PASSWORD=${{ secrets.RELEASE_STORE_PASSWORD }} + RELEASE_KEY_ALIAS=${{ secrets.RELEASE_KEY_ALIAS }} + RELEASE_KEY_PASSWORD=${{ secrets.RELEASE_KEY_PASSWORD }} EOF + echo "โœ… Keystore configuration created" + - name: ๐Ÿ”จ Build Release APK if: steps.check-existing.outputs.skip-build == 'false' run: | @@ -343,8 +343,8 @@ jobs: if: always() run: | # Remove sensitive files - rm -f android/app/release-key.jks rm -f android/keystore.properties + rm -f android/temp-keystore.jks echo "๐Ÿงน Cleanup completed" - name: ๐Ÿ“ฑ Post-Release Summary diff --git a/android/app/build.gradle b/android/app/build.gradle index 3775283..0400880 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -1,4 +1,7 @@ apply plugin: 'com.android.application' + +import java.util.Base64 + // Load keystore properties def keystorePropertiesFile = rootProject.file("keystore.properties") def keystoreProperties = new Properties()