/flutter-app-template

Flutter App Template

Primary LanguageDartApache License 2.0Apache-2.0

Flutter Example Template

License Build Twitter Follow

Gradle + Intellij + Flutter

Setup

Flutter

rm -f ios/Podfile.lock
rm -f pubspec.lock
flutter upgrade
flutter pub get
flutter pub upgrade

Build All

flutter build apk --debug
flutter build ios --debug --no-codesign
flutter build web

Build the Android app

Debug

flutter build apk --debug

Release APK

flutter build apk --release --obfuscate --split-debug-info build/app/outputs/symbols-apk/ --target-platform android-arm64

Release Bundle

flutter build appbundle --release --obfuscate --split-debug-info build/app/outputs/symbols-appbundle --target-platform android-arm64

Build the iOS app

Debug

flutter build ios --debug --no-codesign

Release

flutter build ios --release --obfuscate --split-debug-info build/ios/outputs/symbols

Build the Web app

Debug/Release

flutter build web

Testing

Run unit tests with coverage

flutter test --test-randomize-ordering-seed=random --coverage

Integration Testing

Start chromedriver

chromedriver --port=4444

Run integration tests

flutter drive \
 --driver=test_driver/integration_test.dart \
 --target=integration_test/all_tests.dart \
 -d web-server

Reports

Run analyzer

flutter analyze

Local Debug Run

rm -f pubspec.lock && \
flutter upgrade && \
flutter pub get && \
flutter pub upgrade --major-versions && \

osv-scanner -r . && \

dart format . && \
dart fix --dry-run && \
dart fix --apply && \

flutter analyze && \

flutter test --test-randomize-ordering-seed=random && \

flutter drive \
 --driver=test_driver/integration_test.dart \
 --target=integration_test/all_tests.dart \
 -d web-server

Local Test Run

Run locally

flutter build web --wasm --release --base-href /
flutter run -d chrome --release

Anyone on network

flutter run -d web-server --release --web-port 8080 --web-hostname 0.0.0.0

Deploy

flutter build web --wasm --release --base-href /
firebase deploy