diff --git a/.github/workflows/android-release.yml b/.github/workflows/android-release.yml index 367dca86..86c1da99 100644 --- a/.github/workflows/android-release.yml +++ b/.github/workflows/android-release.yml @@ -29,7 +29,7 @@ jobs: - name: Decrypt config files run: | - cd ./android/fastlane/envfiles + cd ./fastlane/android/envfiles chmod +x ./decrypt_secrets.sh ./decrypt_secrets.sh env: diff --git a/.gitignore b/.gitignore index 8317ac5e..eb18a5b7 100644 --- a/.gitignore +++ b/.gitignore @@ -40,8 +40,10 @@ app.*.symbols # Obfuscation related app.*.map.json -# Exceptions to above rules. +# Remember to never publicly share your keystore. +# See https://flutter.dev/docs/deployment/android#reference-the-keystore-from-the-app !/packages/flutter_tools/test/data/dart_dependencies_test/**/.packages -/android/fastlane/envfiles/playstore.json -/android/fastlane/envfiles/wger.properties -/android/fastlane/envfiles/keys.jks +/fastlane/metadata/android/envfiles/playstore.json +/fastlane/metadata/android/envfiles/wger.properties +/fastlane/metadata/android/envfiles/keys.jks +/fastlane/metadata/android/envfiles/key.properties diff --git a/android/.gitignore b/android/.gitignore index 60658c9a..bc2100d8 100644 --- a/android/.gitignore +++ b/android/.gitignore @@ -5,7 +5,3 @@ gradle-wrapper.jar /gradlew.bat /local.properties GeneratedPluginRegistrant.java - -# Remember to never publicly share your keystore. -# See https://flutter.dev/docs/deployment/android#reference-the-keystore-from-the-app -fastlane/envfiles/key.properties diff --git a/android/app/build.gradle b/android/app/build.gradle index 58146be7..8633bbe8 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -27,14 +27,14 @@ apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" // Keys for the android play store def keystoreProperties = new Properties() -def keystorePropertiesFile = rootProject.file('fastlane/envfiles/key.properties') +def keystorePropertiesFile = rootProject.file('../fastlane/metadata/android/envfiles/key.properties') if (keystorePropertiesFile.exists()) { keystoreProperties.load(new FileInputStream(keystorePropertiesFile)) } // Key for wger.de REST API def wgerProperties = new Properties() -def localMapsPropertiesFile = rootProject.file('fastlane/envfiles/wger.properties') +def localMapsPropertiesFile = rootProject.file('../fastlane/metadata/android/envfiles/wger.properties') if (localMapsPropertiesFile.exists()) { project.logger.info('Load maps properties from local file') localMapsPropertiesFile.withReader('UTF-8') { reader -> @@ -55,7 +55,7 @@ if(wgerApiKey == null){ } android { - compileSdkVersion 29 + compileSdkVersion 31 sourceSets { main.java.srcDirs += 'src/main/kotlin' @@ -69,7 +69,7 @@ android { // Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). applicationId "de.wger.flutter" minSdkVersion 21 - targetSdkVersion 30 + targetSdkVersion 31 versionCode flutterVersionCode.toInteger() versionName flutterVersionName manifestPlaceholders = [WGER_API_KEY: wgerApiKey] diff --git a/android/fastlane/Appfile b/android/fastlane/Appfile deleted file mode 100644 index f469745a..00000000 --- a/android/fastlane/Appfile +++ /dev/null @@ -1,2 +0,0 @@ -json_key_file("fastlane/envfiles/playstore.json") -package_name("de.wger.flutter") diff --git a/android/fastlane/envfiles/key.properties.gpg b/android/fastlane/envfiles/key.properties.gpg deleted file mode 100644 index 09b057b9..00000000 Binary files a/android/fastlane/envfiles/key.properties.gpg and /dev/null differ diff --git a/fastlane/Appfile b/fastlane/Appfile new file mode 100644 index 00000000..9a5da25e --- /dev/null +++ b/fastlane/Appfile @@ -0,0 +1,2 @@ +json_key_file("fastlane/metadata/android/envfiles/playstore.json") +package_name("de.wger.flutter") diff --git a/android/fastlane/Fastfile b/fastlane/Fastfile similarity index 75% rename from android/fastlane/Fastfile rename to fastlane/Fastfile index 6be66427..13edb534 100644 --- a/android/fastlane/Fastfile +++ b/fastlane/Fastfile @@ -25,12 +25,24 @@ end platform :android do + desc "Check playstore configuration" + lane :test_configuration do + begin + upload_to_play_store( + track: 'production', + validate_only: true, + aab: './build/app/outputs/bundle/release/app-release.aab', + ) + end + end + + desc "Upload app to production" lane :production do begin upload_to_play_store( track: 'production', - aab: '../build/app/outputs/bundle/release/app-release.aab', + aab: './build/app/outputs/bundle/release/app-release.aab', skip_upload_metadata: false, skip_upload_images: false, skip_upload_screenshots: false, @@ -45,7 +57,7 @@ platform :android do begin upload_to_play_store( track: 'alpha', - aab: '../build/app/outputs/bundle/release/app-release.aab', + aab: './build/app/outputs/bundle/release/app-release.aab', skip_upload_metadata: true, skip_upload_images: true, skip_upload_screenshots: true, diff --git a/android/fastlane/Pluginfile b/fastlane/Pluginfile similarity index 100% rename from android/fastlane/Pluginfile rename to fastlane/Pluginfile diff --git a/android/fastlane/README.md b/fastlane/README.md similarity index 85% rename from android/fastlane/README.md rename to fastlane/README.md index b925fd02..1134b660 100644 --- a/android/fastlane/README.md +++ b/fastlane/README.md @@ -24,6 +24,11 @@ fastlane playstore ---- ## Android +### android test_configuration +``` +fastlane android test_configuration +``` +Check configuration ### android production ``` fastlane android production @@ -34,14 +39,9 @@ Upload app to production fastlane android update_alpha ``` Upload closed alpha app and update store entry -### android deploy -``` -fastlane android deploy -``` -Deploy a new version to the Google Play ---- -This README.md is auto-generated and will be re-generated every time [fastlane](https://fastlane.tools) is run. +This README.md is auto-generated and will be re-generated every time [_fastlane_](https://fastlane.tools) is run. More information about fastlane can be found on [fastlane.tools](https://fastlane.tools). The documentation of fastlane can be found on [docs.fastlane.tools](https://docs.fastlane.tools). diff --git a/android/fastlane/metadata/android/README.md b/fastlane/metadata/android/README.md similarity index 100% rename from android/fastlane/metadata/android/README.md rename to fastlane/metadata/android/README.md diff --git a/android/fastlane/metadata/android/de-DE/full_description.txt b/fastlane/metadata/android/de-DE/full_description.txt similarity index 100% rename from android/fastlane/metadata/android/de-DE/full_description.txt rename to fastlane/metadata/android/de-DE/full_description.txt diff --git a/android/fastlane/metadata/android/de-DE/short_description.txt b/fastlane/metadata/android/de-DE/short_description.txt similarity index 100% rename from android/fastlane/metadata/android/de-DE/short_description.txt rename to fastlane/metadata/android/de-DE/short_description.txt diff --git a/android/fastlane/metadata/android/de-DE/title.txt b/fastlane/metadata/android/de-DE/title.txt similarity index 100% rename from android/fastlane/metadata/android/de-DE/title.txt rename to fastlane/metadata/android/de-DE/title.txt diff --git a/android/fastlane/metadata/android/en-US/full_description.txt b/fastlane/metadata/android/en-US/full_description.txt similarity index 100% rename from android/fastlane/metadata/android/en-US/full_description.txt rename to fastlane/metadata/android/en-US/full_description.txt diff --git a/fastlane/metadata/android/en-US/images/logo.png b/fastlane/metadata/android/en-US/images/logo.png new file mode 100644 index 00000000..9897116e Binary files /dev/null and b/fastlane/metadata/android/en-US/images/logo.png differ diff --git a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/01 - workout plan.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/01 - workout plan.png similarity index 100% rename from android/fastlane/metadata/android/en-US/images/phoneScreenshots/01 - workout plan.png rename to fastlane/metadata/android/en-US/images/phoneScreenshots/01 - workout plan.png diff --git a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/02 - workout log.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/02 - workout log.png similarity index 100% rename from android/fastlane/metadata/android/en-US/images/phoneScreenshots/02 - workout log.png rename to fastlane/metadata/android/en-US/images/phoneScreenshots/02 - workout log.png diff --git a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/03 - gym mode.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/03 - gym mode.png similarity index 100% rename from android/fastlane/metadata/android/en-US/images/phoneScreenshots/03 - gym mode.png rename to fastlane/metadata/android/en-US/images/phoneScreenshots/03 - gym mode.png diff --git a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/04 - nutritional plan.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/04 - nutritional plan.png similarity index 100% rename from android/fastlane/metadata/android/en-US/images/phoneScreenshots/04 - nutritional plan.png rename to fastlane/metadata/android/en-US/images/phoneScreenshots/04 - nutritional plan.png diff --git a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/05 - weight.png b/fastlane/metadata/android/en-US/images/phoneScreenshots/05 - weight.png similarity index 100% rename from android/fastlane/metadata/android/en-US/images/phoneScreenshots/05 - weight.png rename to fastlane/metadata/android/en-US/images/phoneScreenshots/05 - weight.png diff --git a/android/fastlane/metadata/android/en-US/short_description.txt b/fastlane/metadata/android/en-US/short_description.txt similarity index 100% rename from android/fastlane/metadata/android/en-US/short_description.txt rename to fastlane/metadata/android/en-US/short_description.txt diff --git a/android/fastlane/metadata/android/en-US/title.txt b/fastlane/metadata/android/en-US/title.txt similarity index 100% rename from android/fastlane/metadata/android/en-US/title.txt rename to fastlane/metadata/android/en-US/title.txt diff --git a/android/fastlane/metadata/android/en-US/video.txt b/fastlane/metadata/android/en-US/video.txt similarity index 100% rename from android/fastlane/metadata/android/en-US/video.txt rename to fastlane/metadata/android/en-US/video.txt diff --git a/android/fastlane/envfiles/decrypt_secrets.sh b/fastlane/metadata/android/envfiles/decrypt_secrets.sh similarity index 84% rename from android/fastlane/envfiles/decrypt_secrets.sh rename to fastlane/metadata/android/envfiles/decrypt_secrets.sh index e7995ae8..e44097a1 100755 --- a/android/fastlane/envfiles/decrypt_secrets.sh +++ b/fastlane/metadata/android/envfiles/decrypt_secrets.sh @@ -3,6 +3,9 @@ # --batch to prevent interactive command # --yes to assume "yes" for questions +# To encrypt a new version of the keys: +# gpg -c filename.json + echo "decrypting playstore API keys" gpg --quiet --batch --yes --decrypt --passphrase="$DECRYPTKEY_PLAYSTORE" \ --output ./playstore.json playstore.json.gpg diff --git a/fastlane/metadata/android/envfiles/key.properties.gpg b/fastlane/metadata/android/envfiles/key.properties.gpg new file mode 100644 index 00000000..f55eeee0 Binary files /dev/null and b/fastlane/metadata/android/envfiles/key.properties.gpg differ diff --git a/android/fastlane/envfiles/keys.jks.gpg b/fastlane/metadata/android/envfiles/keys.jks.gpg similarity index 100% rename from android/fastlane/envfiles/keys.jks.gpg rename to fastlane/metadata/android/envfiles/keys.jks.gpg diff --git a/android/fastlane/envfiles/playstore.json.gpg b/fastlane/metadata/android/envfiles/playstore.json.gpg similarity index 100% rename from android/fastlane/envfiles/playstore.json.gpg rename to fastlane/metadata/android/envfiles/playstore.json.gpg diff --git a/android/fastlane/metadata/android/es-ES/full_description.txt b/fastlane/metadata/android/es-ES/full_description.txt similarity index 100% rename from android/fastlane/metadata/android/es-ES/full_description.txt rename to fastlane/metadata/android/es-ES/full_description.txt diff --git a/android/fastlane/metadata/android/es-ES/short_description.txt b/fastlane/metadata/android/es-ES/short_description.txt similarity index 100% rename from android/fastlane/metadata/android/es-ES/short_description.txt rename to fastlane/metadata/android/es-ES/short_description.txt diff --git a/android/fastlane/metadata/android/es-ES/title.txt b/fastlane/metadata/android/es-ES/title.txt similarity index 100% rename from android/fastlane/metadata/android/es-ES/title.txt rename to fastlane/metadata/android/es-ES/title.txt diff --git a/android/fastlane/metadata/android/fr-FR/full_description.txt b/fastlane/metadata/android/fr-FR/full_description.txt similarity index 100% rename from android/fastlane/metadata/android/fr-FR/full_description.txt rename to fastlane/metadata/android/fr-FR/full_description.txt diff --git a/android/fastlane/metadata/android/fr-FR/short_description.txt b/fastlane/metadata/android/fr-FR/short_description.txt similarity index 100% rename from android/fastlane/metadata/android/fr-FR/short_description.txt rename to fastlane/metadata/android/fr-FR/short_description.txt diff --git a/android/fastlane/metadata/android/fr-FR/title.txt b/fastlane/metadata/android/fr-FR/title.txt similarity index 100% rename from android/fastlane/metadata/android/fr-FR/title.txt rename to fastlane/metadata/android/fr-FR/title.txt diff --git a/android/fastlane/metadata/android/hr/full_description.txt b/fastlane/metadata/android/hr/full_description.txt similarity index 100% rename from android/fastlane/metadata/android/hr/full_description.txt rename to fastlane/metadata/android/hr/full_description.txt diff --git a/android/fastlane/metadata/android/hr/short_description.txt b/fastlane/metadata/android/hr/short_description.txt similarity index 100% rename from android/fastlane/metadata/android/hr/short_description.txt rename to fastlane/metadata/android/hr/short_description.txt diff --git a/android/fastlane/metadata/android/hr/title.txt b/fastlane/metadata/android/hr/title.txt similarity index 100% rename from android/fastlane/metadata/android/hr/title.txt rename to fastlane/metadata/android/hr/title.txt diff --git a/android/fastlane/metadata/android/it-IT/full_description.txt b/fastlane/metadata/android/it-IT/full_description.txt similarity index 100% rename from android/fastlane/metadata/android/it-IT/full_description.txt rename to fastlane/metadata/android/it-IT/full_description.txt diff --git a/android/fastlane/metadata/android/it-IT/short_description.txt b/fastlane/metadata/android/it-IT/short_description.txt similarity index 100% rename from android/fastlane/metadata/android/it-IT/short_description.txt rename to fastlane/metadata/android/it-IT/short_description.txt diff --git a/android/fastlane/metadata/android/it-IT/title.txt b/fastlane/metadata/android/it-IT/title.txt similarity index 100% rename from android/fastlane/metadata/android/it-IT/title.txt rename to fastlane/metadata/android/it-IT/title.txt diff --git a/android/fastlane/metadata/android/nb-NO/full_description.txt b/fastlane/metadata/android/nb-NO/full_description.txt similarity index 100% rename from android/fastlane/metadata/android/nb-NO/full_description.txt rename to fastlane/metadata/android/nb-NO/full_description.txt diff --git a/android/fastlane/metadata/android/nb-NO/short_description.txt b/fastlane/metadata/android/nb-NO/short_description.txt similarity index 100% rename from android/fastlane/metadata/android/nb-NO/short_description.txt rename to fastlane/metadata/android/nb-NO/short_description.txt diff --git a/android/fastlane/metadata/android/nb-NO/title.txt b/fastlane/metadata/android/nb-NO/title.txt similarity index 100% rename from android/fastlane/metadata/android/nb-NO/title.txt rename to fastlane/metadata/android/nb-NO/title.txt diff --git a/android/fastlane/metadata/android/tr/full_description.txt b/fastlane/metadata/android/tr/full_description.txt similarity index 100% rename from android/fastlane/metadata/android/tr/full_description.txt rename to fastlane/metadata/android/tr/full_description.txt diff --git a/android/fastlane/metadata/android/tr/short_description.txt b/fastlane/metadata/android/tr/short_description.txt similarity index 100% rename from android/fastlane/metadata/android/tr/short_description.txt rename to fastlane/metadata/android/tr/short_description.txt diff --git a/android/fastlane/metadata/android/uk/full_description.txt b/fastlane/metadata/android/uk/full_description.txt similarity index 100% rename from android/fastlane/metadata/android/uk/full_description.txt rename to fastlane/metadata/android/uk/full_description.txt diff --git a/android/fastlane/metadata/android/uk/short_description.txt b/fastlane/metadata/android/uk/short_description.txt similarity index 100% rename from android/fastlane/metadata/android/uk/short_description.txt rename to fastlane/metadata/android/uk/short_description.txt diff --git a/android/fastlane/metadata/android/uk/title.txt b/fastlane/metadata/android/uk/title.txt similarity index 100% rename from android/fastlane/metadata/android/uk/title.txt rename to fastlane/metadata/android/uk/title.txt diff --git a/android/fastlane/report.xml b/fastlane/report.xml similarity index 100% rename from android/fastlane/report.xml rename to fastlane/report.xml diff --git a/pubspec.lock b/pubspec.lock index 321b0a41..6fe7ae66 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -300,6 +300,13 @@ packages: description: flutter source: sdk version: "0.0.0" + flutter_barcode_scanner: + dependency: "direct main" + description: + name: flutter_barcode_scanner + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.0" flutter_calendar_carousel: dependency: "direct main" description: