Skip to content

Build APK Release

Build APK Release #4

Workflow file for this run

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