These instructions only work for luckyrat.
(For new client machines) check that ~/keystore-kv-play.jks exists cd android Set env variables by executing the code in the "Setup Env" field of these entries:
- "Google Play Console API"
- "Android kv-play keystore"
flutter build appbundle --dart-define KEEVAULT_STAGE=prod --dart-define KEEVAULT_CHANNEL=play --dart-define IAP_GOOGLE_PLAY=yes
bundle exec fastlane internal
Create <=500 characters of release notes: android/fastlane/metadata/android/en-GB/changelogs/.txt
bundle exec fastlane alpha
bundle exec fastlane beta
We use Patrol integration testing framework to orchestrate navigation through the app to the various places we need to take a screenshot for use in app stores.
- Build:
BOTH:
Uncomment patrol dependency in pubspec.yaml and run flutter pub get
Above is needed until we can leave the dependency in permanently: leancodepl/patrol#681 (comment)
ios:
# seems to be necessary to clean and rebuild in order to swap between integration test support and general development/debugging support
# run project clean from xcode
# CLOSE XCODE
flutter clean
flutter build ios --config-only integration_test/manual_screenshots_test.dart
#cd ios
#pod install --repo-update # not necessary cos flutter build does this already, I think.
#cd ..
android:
flutter clean
flutter build android --config-only integration_test/manual_screenshots_test.dart
- Check that only one device is present (manually stop and start simulators and unplug physical devices as necessary)
patrol devices
- Start the test
patrol test --target integration_test/manual_screenshots_test.dart --verbose --no-label
- Clear the system clipboard and check that "enable clipboard sharing" in android extended controls is disabled (it seems to cache the contents of host clipboard even after we wipe it).
pbcopy < /dev/null
-
Click the screenshot button each time we pause for that operation to happen
-
Go to where the simulators store the screenshots and upload them to whatever we use to convert them into something prettier
-
Export from that online tool and manually upload them to Apple App Store (later run
fastlane deliver init
and then automate this) and put them into the correct fastlane metadata location for Google Play screenshots (and later the automated Apple app store)
- iPhone 5.5" = iPhone SE (3rd gen) 16.4
- iPhone 6.5" = iPhone 14 Plus 16.4
- iPad = iPad Pro 12.9" 16.4
- Android phone = Nexus 6 (16:9) API 33
- Android tablet = Nexus 10 API 31 (do not go higher than this API until Google has enabled a way for us to hide the huge bottom taskbar introduced in API 32)
- Might cause TestFlight builds to become invalidated?
cd ios
bundle exec fastlane match nuke development
bundle exec fastlane match nuke distribution
bundle exec fastlane generate_new_certificates
bundle exec fastlane iapdevcert
bundle exec fastlane certificates
on any other mac devices to get the latest certs that were just generated.