diff --git a/.github/workflows/android_build.yml b/.github/workflows/android_build.yml
index 64566233..8cec0a90 100644
--- a/.github/workflows/android_build.yml
+++ b/.github/workflows/android_build.yml
@@ -74,7 +74,6 @@ jobs:
cd ..
mv khelo/build/app/outputs/apk/release/Khelo*.apk .
- mv khelo/build/app/outputs/bundle/release/app-release.aab .
- name: Upload APK Artifact
uses: actions/upload-artifact@v4
@@ -83,9 +82,77 @@ jobs:
path: Khelo*.apk
retention-days: 2
- - name: Upload AAB Artifact
- uses: actions/upload-artifact@v4
- with:
- name: Khelo AAB
- path: app-release.aab
- retention-days: 2
+ android_build_aab:
+ runs-on: ubuntu-latest
+ needs: android_build_apk
+
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v4
+
+ - name: Set up JDK 1.8
+ uses: actions/setup-java@v4
+ with:
+ distribution: 'oracle'
+ java-version: 17.0.6
+ cache: 'gradle'
+
+ - name: Set up Flutter SDK
+ uses: subosito/flutter-action@v2
+ with:
+ channel: stable
+ cache: true
+
+ - name: Set up ruby env
+ uses: ruby/setup-ruby@v1
+ with:
+ ruby-version: 3.3.0
+ bundler-cache: true
+
+ - name: Retrieve the secret and decode it to file
+ env:
+ FIREBASE_OPTIONS_BASE64: ${{ secrets.FIREBASE_OPTIONS_BASE64 }}
+ GOOGLE_SERVICES_JSON_BASE64: ${{ secrets.GOOGLE_SERVICES_JSON_BASE64 }}
+
+ run: |
+ cd khelo
+ echo $FIREBASE_OPTIONS_BASE64 | base64 -di > lib/firebase_options.dart
+ echo $GOOGLE_SERVICES_JSON_BASE64 | base64 -di > android/app/google-services.json
+
+ - name: Install Dependencies
+ run: |
+ cd data && flutter clean && flutter pub get
+ cd ../style && flutter clean && flutter pub get
+ cd ../khelo && flutter clean && flutter pub get
+ cd ..
+
+ - name: Generate build
+ env:
+ APKSIGN_KEYSTORE_BASE64: ${{ secrets.APKSIGN_KEYSTORE_BASE64 }}
+ APKSIGN_KEYSTORE_PASS: ${{ secrets.APKSIGN_KEYSTORE_PASS }}
+ APKSIGN_KEY_ALIAS: ${{ secrets.APKSIGN_KEY_ALIAS }}
+ APKSIGN_KEY_PASS: ${{ secrets.APKSIGN_KEY_PASS }}
+
+ run: |
+ echo $APKSIGN_KEYSTORE_BASE64 | base64 -di > release.keystore
+ export APKSIGN_KEYSTORE=`pwd`/release.keystore
+ cd khelo
+ file='VERSION'
+ fileData=`cat $file`
+ IFS='.'
+ read -a versionValue <<< "$fileData"
+ buildNumber=$(( ${versionValue[0]} * 1000000 + ${versionValue[1]} * 10000 + ${{ github.run_number }} ))
+ IFS=''
+ buildName="${versionValue[0]}.${versionValue[1]}.${{ github.run_number }}"
+ echo "Generating android build $buildName $buildNumber"
+ flutter build apk --release --build-number=$buildNumber --build-name=$buildName
+
+ cd ..
+ mv khelo/build/app/outputs/bundle/release/app-release.aab .
+
+ - name: Upload AAB Artifact
+ uses: actions/upload-artifact@v4
+ with:
+ name: Khelo AAB
+ path: app-release.aab
+ retention-days: 2
diff --git a/khelo/ios/Runner/Info.plist b/khelo/ios/Runner/Info.plist
index 7cd7f4ad..93080e1f 100644
--- a/khelo/ios/Runner/Info.plist
+++ b/khelo/ios/Runner/Info.plist
@@ -48,6 +48,7 @@
UIBackgroundModes
fetch
+ remote-notification
UILaunchStoryboardName
LaunchScreen