Build APK Release #4
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Build APK Release | |
| on: | |
| workflow_dispatch: | |
| jobs: | |
| build-release: | |
| name: Build Release APK (Android) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Setup Dart | |
| uses: dart-lang/setup-dart@v1 | |
| - name: Install FVM | |
| run: dart pub global activate fvm | |
| - name: Add FVM to PATH | |
| run: echo "$HOME/.pub-cache/bin" >> $GITHUB_PATH | |
| - name: Install Flutter via FVM | |
| run: fvm install | |
| - name: Use FVM Flutter | |
| run: fvm use --force | |
| - name: Flutter version | |
| run: fvm flutter --version | |
| - name: Set up JDK | |
| uses: actions/setup-java@v3 | |
| with: | |
| java-version: '17' | |
| distribution: 'temurin' | |
| - name: Decode keystore | |
| run: | | |
| echo "${{ secrets.KEYSTORE_BASE64 }}" | base64 -d > android/app/release-key.jks | |
| - name: Create key.properties | |
| run: | | |
| cat > android/key.properties << EOF | |
| storePassword=${{ secrets.KEYSTORE_PASSWORD }} | |
| keyPassword=${{ secrets.KEY_PASSWORD }} | |
| keyAlias=${{ secrets.KEY_ALIAS }} | |
| storeFile=release-key.jks | |
| EOF | |
| - name: Build Release APK | |
| run: | | |
| fvm flutter pub get | |
| fvm flutter build apk --release | |
| - name: Upload APK | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: release-apk | |
| path: build/app/outputs/flutter-apk/app-release.apk |