From 85451e791c44c831cf1f2f79032262d2119b5705 Mon Sep 17 00:00:00 2001 From: "Luong Vo (Lucas)" Date: Wed, 18 Oct 2023 23:57:16 +0700 Subject: [PATCH 1/6] [#268] Rename signing.properties to end with ".sample" to be generated to sample folder --- .../android/{signing.properties => signing.properties.sample} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename bricks/template/__brick__/android/{signing.properties => signing.properties.sample} (100%) diff --git a/bricks/template/__brick__/android/signing.properties b/bricks/template/__brick__/android/signing.properties.sample similarity index 100% rename from bricks/template/__brick__/android/signing.properties rename to bricks/template/__brick__/android/signing.properties.sample From 4980d8d1572bd23f38d89ae4674c8ed0bd151cd1 Mon Sep 17 00:00:00 2001 From: "Luong Vo (Lucas)" Date: Thu, 19 Oct 2023 00:18:45 +0700 Subject: [PATCH 2/6] [#268] Update README instruction to sign release build --- bricks/template/__brick__/README.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/bricks/template/__brick__/README.md b/bricks/template/__brick__/README.md index 386f4a20..e613cf20 100644 --- a/bricks/template/__brick__/README.md +++ b/bricks/template/__brick__/README.md @@ -12,12 +12,18 @@ ### Setup - Create these `.env` files in the root directory according to the flavors and add the required -environment variables. The example environment variable is in `.env.sample`. +environment variables. The example file is `.env.sample`. - Staging: `.env.staging` - Production: `.env` +- To make the Android release build, + + - put the `release.keystore` at the `android/config` folder, + + - create the `signing.properties` file to provide keystore credentials in the `android` folder. The example file is `signing.properties.sample`. + ### Run - Run code generator for JSON models, DI dependencies, etc: From de12e5f89c9838a34ad628a65553b6518e948333 Mon Sep 17 00:00:00 2001 From: "Luong Vo (Lucas)" Date: Thu, 19 Oct 2023 00:19:05 +0700 Subject: [PATCH 3/6] [#268] Fix: Keep BuildConfig for Flutter Config https://github.com/ByneappLLC/flutter_config/blob/master/doc/ANDROID.md#android-setup --- .../__brick__/android/app/proguard-rules.pro | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 bricks/template/__brick__/android/app/proguard-rules.pro diff --git a/bricks/template/__brick__/android/app/proguard-rules.pro b/bricks/template/__brick__/android/app/proguard-rules.pro new file mode 100644 index 00000000..0acab615 --- /dev/null +++ b/bricks/template/__brick__/android/app/proguard-rules.pro @@ -0,0 +1,24 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle.kts. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile + +# Keep BuildConfig for Flutter Config https://github.com/ByneappLLC/flutter_config/blob/master/doc/ANDROID.md#android-setup +-keep class {{package_name.dotCase()}}.BuildConfig { *; } From 0ec5f0270fccaa6f878f295d06ac1e15e14374cf Mon Sep 17 00:00:00 2001 From: "Luong Vo (Lucas)" Date: Wed, 25 Oct 2023 10:34:18 +0700 Subject: [PATCH 4/6] [#268] Update workflows to build Android production release build --- .github/workflows/android_deploy_production.yml | 12 ++++++++++-- .../.github/workflows/android_deploy_production.yml | 12 ++++++++++-- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/.github/workflows/android_deploy_production.yml b/.github/workflows/android_deploy_production.yml index ee34116c..a6e727d6 100644 --- a/.github/workflows/android_deploy_production.yml +++ b/.github/workflows/android_deploy_production.yml @@ -45,9 +45,17 @@ jobs: run: | echo -e "$ENV" > .env + - name: Set up release signing configs + env: + ANDROID_RELEASE_KEYSTORE_BASE64: ${{ secrets.ANDROID_RELEASE_KEYSTORE_BASE64 }} + ANDROID_SIGNING_PROPERTIES: ${{ secrets.ANDROID_SIGNING_PROPERTIES }} + run: | + echo $ANDROID_RELEASE_KEYSTORE_BASE64 | base64 --decode > android/config/release.keystore + echo "$ANDROID_SIGNING_PROPERTIES" > android/signing.properties + # App Bundle requires Firebase connected to Play Store to upload https://appdistribution.page.link/KPoa - name: Build Android apk - run: flutter build apk --flavor production --debug --build-number $GITHUB_RUN_NUMBER + run: flutter build apk --flavor production --release --build-number $GITHUB_RUN_NUMBER - name: Deploy Android Production to Firebase uses: wzieba/Firebase-Distribution-Github-Action@v1.5.0 @@ -55,4 +63,4 @@ jobs: appId: ${{ vars.FIREBASE_ANDROID_APP_ID }} serviceCredentialsFileContent: ${{ secrets.FIREBASE_DISTRIBUTION_CREDENTIAL_JSON }} groups: ${{ vars.FIREBASE_DISTRIBUTION_TESTER_GROUPS }} - file: build/app/outputs/flutter-apk/app-production-debug.apk + file: build/app/outputs/flutter-apk/app-production-release.apk diff --git a/bricks/template/__brick__/.github/workflows/android_deploy_production.yml b/bricks/template/__brick__/.github/workflows/android_deploy_production.yml index f73c2c71..27a3bfd8 100644 --- a/bricks/template/__brick__/.github/workflows/android_deploy_production.yml +++ b/bricks/template/__brick__/.github/workflows/android_deploy_production.yml @@ -39,9 +39,17 @@ jobs: run: | echo -e "$ENV" > .env + - name: Set up release signing configs + env: + ANDROID_RELEASE_KEYSTORE_BASE64: ${{#mustacheCase}}secrets.ANDROID_RELEASE_KEYSTORE_BASE64{{/mustacheCase}} + ANDROID_SIGNING_PROPERTIES: ${{#mustacheCase}}secrets.ANDROID_SIGNING_PROPERTIES{{/mustacheCase}} + run: | + echo $ANDROID_RELEASE_KEYSTORE_BASE64 | base64 --decode > android/config/release.keystore + echo "$ANDROID_SIGNING_PROPERTIES" > android/signing.properties + # App Bundle requires Firebase connected to Play Store to upload https://appdistribution.page.link/KPoa - name: Build Android apk - run: flutter build apk --flavor production --debug --build-number $GITHUB_RUN_NUMBER + run: flutter build apk --flavor production --release --build-number $GITHUB_RUN_NUMBER - name: Deploy Android Production to Firebase uses: wzieba/Firebase-Distribution-Github-Action@v1.5.0 @@ -49,4 +57,4 @@ jobs: appId: ${{#mustacheCase}}vars.FIREBASE_ANDROID_APP_ID{{/mustacheCase}} serviceCredentialsFileContent: ${{#mustacheCase}}secrets.FIREBASE_DISTRIBUTION_CREDENTIAL_JSON{{/mustacheCase}} groups: ${{#mustacheCase}}vars.FIREBASE_DISTRIBUTION_TESTER_GROUPS{{/mustacheCase}} - file: build/app/outputs/flutter-apk/app-production-debug.apk + file: build/app/outputs/flutter-apk/app-production-release.apk From cb9993a126f20ef75d5e56a278b1c0b4ae67cdae Mon Sep 17 00:00:00 2001 From: "Luong Vo (Lucas)" Date: Wed, 25 Oct 2023 11:19:13 +0700 Subject: [PATCH 5/6] [#268] Update all CD workflow naming --- .github/workflows/android_deploy_production.yml | 2 +- .../workflows/android_deploy_production_to_playstore.yml | 2 +- .github/workflows/android_deploy_staging.yml | 2 +- .github/workflows/ios_deploy_staging_to_firebase.yml | 6 +++--- .github/workflows/ios_deploy_to_app_store.yml | 6 +++--- .github/workflows/ios_deploy_to_testflight.yml | 6 +++--- .../.github/workflows/android_deploy_production.yml | 2 +- .../workflows/android_deploy_production_to_playstore.yml | 2 +- .../__brick__/.github/workflows/android_deploy_staging.yml | 2 +- .../.github/workflows/ios_deploy_staging_to_firebase.yml | 6 +++--- .../__brick__/.github/workflows/ios_deploy_to_app_store.yml | 6 +++--- .../.github/workflows/ios_deploy_to_testflight.yml | 6 +++--- 12 files changed, 24 insertions(+), 24 deletions(-) diff --git a/.github/workflows/android_deploy_production.yml b/.github/workflows/android_deploy_production.yml index a6e727d6..4c387402 100644 --- a/.github/workflows/android_deploy_production.yml +++ b/.github/workflows/android_deploy_production.yml @@ -7,7 +7,7 @@ on: jobs: build_and_deploy_android: - name: Build & Deploy Android + name: Android - Deploy Production build to Firebase runs-on: ubuntu-latest environment: production timeout-minutes: 30 diff --git a/.github/workflows/android_deploy_production_to_playstore.yml b/.github/workflows/android_deploy_production_to_playstore.yml index d0df68a9..1ca9e0ed 100644 --- a/.github/workflows/android_deploy_production_to_playstore.yml +++ b/.github/workflows/android_deploy_production_to_playstore.yml @@ -7,7 +7,7 @@ on: jobs: build_and_deploy_android: - name: Build & Deploy Android + name: Android - Deploy Production build to Play Store runs-on: ubuntu-latest environment: production timeout-minutes: 30 diff --git a/.github/workflows/android_deploy_staging.yml b/.github/workflows/android_deploy_staging.yml index f5e68bfd..b6d3ad21 100644 --- a/.github/workflows/android_deploy_staging.yml +++ b/.github/workflows/android_deploy_staging.yml @@ -7,7 +7,7 @@ on: jobs: build_and_deploy_android: - name: Build & Deploy Android + name: Android - Deploy Staging build to Firebase runs-on: ubuntu-latest environment: staging timeout-minutes: 30 diff --git a/.github/workflows/ios_deploy_staging_to_firebase.yml b/.github/workflows/ios_deploy_staging_to_firebase.yml index 4731c842..a3d1ae54 100644 --- a/.github/workflows/ios_deploy_staging_to_firebase.yml +++ b/.github/workflows/ios_deploy_staging_to_firebase.yml @@ -1,4 +1,4 @@ -name: ios-deploy-to-staging +name: iOS - Deploy Staging build to Firebase on: # Trigger the workflow on push action push: @@ -6,8 +6,8 @@ on: - develop jobs: - build_and_upload_staging_app_to_firebase: - name: Build And Upload iOS Staging Application To Firebase + build_and_deploy_ios: + name: iOS - Deploy Staging build to Firebase runs-on: macOS-latest environment: staging env: diff --git a/.github/workflows/ios_deploy_to_app_store.yml b/.github/workflows/ios_deploy_to_app_store.yml index cae670fa..a8d8663d 100644 --- a/.github/workflows/ios_deploy_to_app_store.yml +++ b/.github/workflows/ios_deploy_to_app_store.yml @@ -1,4 +1,4 @@ -name: ios-deploy-production-to-app-store +name: iOS - Deploy Production build to AppStore on: # Trigger the workflow on push action push: @@ -6,8 +6,8 @@ on: - main jobs: - build_and_upload_to_app_store: - name: Build And Upload iOS Application Production To AppStore + build_and_deploy_ios: + name: iOS - Deploy Production build to AppStore runs-on: macOS-latest environment: production timeout-minutes: 30 diff --git a/.github/workflows/ios_deploy_to_testflight.yml b/.github/workflows/ios_deploy_to_testflight.yml index ff523ea9..a516b573 100644 --- a/.github/workflows/ios_deploy_to_testflight.yml +++ b/.github/workflows/ios_deploy_to_testflight.yml @@ -1,4 +1,4 @@ -name: ios-deploy-production-to-testflight +name: iOS - Deploy Production build to TestFlight on: # Trigger the workflow on push action push: @@ -6,8 +6,8 @@ on: - main jobs: - build_and_upload_to_testflight: - name: Build And Upload iOS Application Production To TestFlight + build_and_deploy_ios: + name: iOS - Deploy Production build to TestFlight runs-on: macOS-latest environment: production timeout-minutes: 30 diff --git a/bricks/template/__brick__/.github/workflows/android_deploy_production.yml b/bricks/template/__brick__/.github/workflows/android_deploy_production.yml index 27a3bfd8..d78f52b5 100644 --- a/bricks/template/__brick__/.github/workflows/android_deploy_production.yml +++ b/bricks/template/__brick__/.github/workflows/android_deploy_production.yml @@ -7,7 +7,7 @@ on: jobs: build_and_deploy_android: - name: Build & Deploy Android + name: Android - Deploy Production build to Firebase runs-on: ubuntu-latest environment: production timeout-minutes: 30 diff --git a/bricks/template/__brick__/.github/workflows/android_deploy_production_to_playstore.yml b/bricks/template/__brick__/.github/workflows/android_deploy_production_to_playstore.yml index fa85666b..687faaf7 100644 --- a/bricks/template/__brick__/.github/workflows/android_deploy_production_to_playstore.yml +++ b/bricks/template/__brick__/.github/workflows/android_deploy_production_to_playstore.yml @@ -7,7 +7,7 @@ on: jobs: build_and_deploy_android: - name: Build & Deploy Android + name: Android - Deploy Production build to Play Store runs-on: ubuntu-latest environment: production timeout-minutes: 30 diff --git a/bricks/template/__brick__/.github/workflows/android_deploy_staging.yml b/bricks/template/__brick__/.github/workflows/android_deploy_staging.yml index 175eaee1..60ede1f1 100644 --- a/bricks/template/__brick__/.github/workflows/android_deploy_staging.yml +++ b/bricks/template/__brick__/.github/workflows/android_deploy_staging.yml @@ -7,7 +7,7 @@ on: jobs: build_and_deploy_android: - name: Build & Deploy Android + name: Android - Deploy Staging build to Firebase runs-on: ubuntu-latest environment: staging timeout-minutes: 30 diff --git a/bricks/template/__brick__/.github/workflows/ios_deploy_staging_to_firebase.yml b/bricks/template/__brick__/.github/workflows/ios_deploy_staging_to_firebase.yml index fd5e6b08..bb9e3523 100644 --- a/bricks/template/__brick__/.github/workflows/ios_deploy_staging_to_firebase.yml +++ b/bricks/template/__brick__/.github/workflows/ios_deploy_staging_to_firebase.yml @@ -1,4 +1,4 @@ -name: ios-deploy-to-staging +name: iOS - Deploy Staging build to Firebase on: # Trigger the workflow on push action push: @@ -6,8 +6,8 @@ on: - develop jobs: - build_and_upload_staging_app_to_firebase: - name: Build And Upload iOS Staging Application To Firebase + build_and_deploy_ios: + name: iOS - Deploy Staging build to Firebase runs-on: macOS-latest environment: staging env: diff --git a/bricks/template/__brick__/.github/workflows/ios_deploy_to_app_store.yml b/bricks/template/__brick__/.github/workflows/ios_deploy_to_app_store.yml index 73329426..9a7340a9 100644 --- a/bricks/template/__brick__/.github/workflows/ios_deploy_to_app_store.yml +++ b/bricks/template/__brick__/.github/workflows/ios_deploy_to_app_store.yml @@ -1,4 +1,4 @@ -name: ios-deploy-production-to-app-store +name: iOS - Deploy Production build to AppStore on: # Trigger the workflow on push action push: @@ -6,8 +6,8 @@ on: - main jobs: - build_and_upload_to_app_store: - name: Build And Upload iOS Application Production To AppStore + build_and_deploy_ios: + name: iOS - Deploy Production build to AppStore runs-on: macOS-latest environment: production timeout-minutes: 30 diff --git a/bricks/template/__brick__/.github/workflows/ios_deploy_to_testflight.yml b/bricks/template/__brick__/.github/workflows/ios_deploy_to_testflight.yml index 3b9a98ba..71b38077 100644 --- a/bricks/template/__brick__/.github/workflows/ios_deploy_to_testflight.yml +++ b/bricks/template/__brick__/.github/workflows/ios_deploy_to_testflight.yml @@ -1,4 +1,4 @@ -name: ios-deploy-production-to-testflight +name: iOS - Deploy Production build to TestFlight on: # Trigger the workflow on push action push: @@ -6,8 +6,8 @@ on: - main jobs: - build_and_upload_to_testflight: - name: Build And Upload iOS Application Production To TestFlight + build_and_deploy_ios: + name: iOS - Deploy Production build to TestFlight runs-on: macOS-latest environment: production timeout-minutes: 30 From 88ef4ab0e489b087f0593eb0a8b005d4c52349af Mon Sep 17 00:00:00 2001 From: team-nimblehq Date: Wed, 25 Oct 2023 04:31:29 +0000 Subject: [PATCH 6/6] [Chore] Generate & update sample project --- .../workflows/android_deploy_production.yml | 14 ++++++++--- ...android_deploy_production_to_playstore.yml | 2 +- .../workflows/android_deploy_staging.yml | 2 +- .../ios_deploy_staging_to_firebase.yml | 6 ++--- .../workflows/ios_deploy_to_app_store.yml | 6 ++--- .../workflows/ios_deploy_to_testflight.yml | 6 ++--- sample/README.md | 8 ++++++- sample/android/app/proguard-rules.pro | 24 +++++++++++++++++++ sample/android/signing.properties.sample | 3 +++ 9 files changed, 56 insertions(+), 15 deletions(-) create mode 100644 sample/android/app/proguard-rules.pro create mode 100644 sample/android/signing.properties.sample diff --git a/sample/.github/workflows/android_deploy_production.yml b/sample/.github/workflows/android_deploy_production.yml index c05c3fa0..700abdd8 100644 --- a/sample/.github/workflows/android_deploy_production.yml +++ b/sample/.github/workflows/android_deploy_production.yml @@ -7,7 +7,7 @@ on: jobs: build_and_deploy_android: - name: Build & Deploy Android + name: Android - Deploy Production build to Firebase runs-on: ubuntu-latest environment: production timeout-minutes: 30 @@ -39,9 +39,17 @@ jobs: run: | echo -e "$ENV" > .env + - name: Set up release signing configs + env: + ANDROID_RELEASE_KEYSTORE_BASE64: ${{ secrets.ANDROID_RELEASE_KEYSTORE_BASE64 }} + ANDROID_SIGNING_PROPERTIES: ${{ secrets.ANDROID_SIGNING_PROPERTIES }} + run: | + echo $ANDROID_RELEASE_KEYSTORE_BASE64 | base64 --decode > android/config/release.keystore + echo "$ANDROID_SIGNING_PROPERTIES" > android/signing.properties + # App Bundle requires Firebase connected to Play Store to upload https://appdistribution.page.link/KPoa - name: Build Android apk - run: flutter build apk --flavor production --debug --build-number $GITHUB_RUN_NUMBER + run: flutter build apk --flavor production --release --build-number $GITHUB_RUN_NUMBER - name: Deploy Android Production to Firebase uses: wzieba/Firebase-Distribution-Github-Action@v1.5.0 @@ -49,4 +57,4 @@ jobs: appId: ${{ vars.FIREBASE_ANDROID_APP_ID }} serviceCredentialsFileContent: ${{ secrets.FIREBASE_DISTRIBUTION_CREDENTIAL_JSON }} groups: ${{ vars.FIREBASE_DISTRIBUTION_TESTER_GROUPS }} - file: build/app/outputs/flutter-apk/app-production-debug.apk + file: build/app/outputs/flutter-apk/app-production-release.apk diff --git a/sample/.github/workflows/android_deploy_production_to_playstore.yml b/sample/.github/workflows/android_deploy_production_to_playstore.yml index 3725357b..5de24626 100644 --- a/sample/.github/workflows/android_deploy_production_to_playstore.yml +++ b/sample/.github/workflows/android_deploy_production_to_playstore.yml @@ -7,7 +7,7 @@ on: jobs: build_and_deploy_android: - name: Build & Deploy Android + name: Android - Deploy Production build to Play Store runs-on: ubuntu-latest environment: production timeout-minutes: 30 diff --git a/sample/.github/workflows/android_deploy_staging.yml b/sample/.github/workflows/android_deploy_staging.yml index c4c64aea..6120d5ac 100644 --- a/sample/.github/workflows/android_deploy_staging.yml +++ b/sample/.github/workflows/android_deploy_staging.yml @@ -7,7 +7,7 @@ on: jobs: build_and_deploy_android: - name: Build & Deploy Android + name: Android - Deploy Staging build to Firebase runs-on: ubuntu-latest environment: staging timeout-minutes: 30 diff --git a/sample/.github/workflows/ios_deploy_staging_to_firebase.yml b/sample/.github/workflows/ios_deploy_staging_to_firebase.yml index 9fbc3f57..a20c1d66 100644 --- a/sample/.github/workflows/ios_deploy_staging_to_firebase.yml +++ b/sample/.github/workflows/ios_deploy_staging_to_firebase.yml @@ -1,4 +1,4 @@ -name: ios-deploy-to-staging +name: iOS - Deploy Staging build to Firebase on: # Trigger the workflow on push action push: @@ -6,8 +6,8 @@ on: - develop jobs: - build_and_upload_staging_app_to_firebase: - name: Build And Upload iOS Staging Application To Firebase + build_and_deploy_ios: + name: iOS - Deploy Staging build to Firebase runs-on: macOS-latest environment: staging env: diff --git a/sample/.github/workflows/ios_deploy_to_app_store.yml b/sample/.github/workflows/ios_deploy_to_app_store.yml index 62eec025..7387736c 100644 --- a/sample/.github/workflows/ios_deploy_to_app_store.yml +++ b/sample/.github/workflows/ios_deploy_to_app_store.yml @@ -1,4 +1,4 @@ -name: ios-deploy-production-to-app-store +name: iOS - Deploy Production build to AppStore on: # Trigger the workflow on push action push: @@ -6,8 +6,8 @@ on: - main jobs: - build_and_upload_to_app_store: - name: Build And Upload iOS Application Production To AppStore + build_and_deploy_ios: + name: iOS - Deploy Production build to AppStore runs-on: macOS-latest environment: production timeout-minutes: 30 diff --git a/sample/.github/workflows/ios_deploy_to_testflight.yml b/sample/.github/workflows/ios_deploy_to_testflight.yml index f0a7fdf8..fd026ed7 100644 --- a/sample/.github/workflows/ios_deploy_to_testflight.yml +++ b/sample/.github/workflows/ios_deploy_to_testflight.yml @@ -1,4 +1,4 @@ -name: ios-deploy-production-to-testflight +name: iOS - Deploy Production build to TestFlight on: # Trigger the workflow on push action push: @@ -6,8 +6,8 @@ on: - main jobs: - build_and_upload_to_testflight: - name: Build And Upload iOS Application Production To TestFlight + build_and_deploy_ios: + name: iOS - Deploy Production build to TestFlight runs-on: macOS-latest environment: production timeout-minutes: 30 diff --git a/sample/README.md b/sample/README.md index 51cd5b1b..552b9b77 100644 --- a/sample/README.md +++ b/sample/README.md @@ -12,12 +12,18 @@ ### Setup - Create these `.env` files in the root directory according to the flavors and add the required -environment variables. The example environment variable is in `.env.sample`. +environment variables. The example file is `.env.sample`. - Staging: `.env.staging` - Production: `.env` +- To make the Android release build, + + - put the `release.keystore` at the `android/config` folder, + + - create the `signing.properties` file to provide keystore credentials in the `android` folder. The example file is `signing.properties.sample`. + ### Run - Run code generator for JSON models, DI dependencies, etc: diff --git a/sample/android/app/proguard-rules.pro b/sample/android/app/proguard-rules.pro new file mode 100644 index 00000000..572f5d65 --- /dev/null +++ b/sample/android/app/proguard-rules.pro @@ -0,0 +1,24 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle.kts. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile + +# Keep BuildConfig for Flutter Config https://github.com/ByneappLLC/flutter_config/blob/master/doc/ANDROID.md#android-setup +-keep class co.nimblehq.flutter.template.BuildConfig { *; } diff --git a/sample/android/signing.properties.sample b/sample/android/signing.properties.sample new file mode 100644 index 00000000..b9688427 --- /dev/null +++ b/sample/android/signing.properties.sample @@ -0,0 +1,3 @@ +KEYSTORE_PASSWORD= +KEY_ALIAS= +KEY_PASSWORD=