Release! Flutter app

3be52a14c8c58209263d7f83204b8dc7?s=47 Rui Kowase
March 29, 2018

Release! Flutter app

3be52a14c8c58209263d7f83204b8dc7?s=128

Rui Kowase

March 29, 2018
Tweet

Transcript

  1. Release! Flutter app Rui Kowase @rkowase 2018/03/29 Dart Meetup Tokyo

    #4
  2. Profile • Name: Rui Kowase / 小和瀬 塁 • Account:

    @rkowase 2 Skill: Flutter (2 weeks), Android, etc...
  3. What’s Flutter Flutter makes it easy and fast to build

    beautiful mobile apps. https://github.com/flutter/flutter
  4. Expressive, beautiful UIs https://flutter.io/

  5. Feature • Build beautiful native apps in record time •

    Fast development • Expressive, beautiful UIs • Modern, reactive framework • Access native features and SDKs • Unified app development https://flutter.io/
  6. Question Are you • Web dev? • Android dev? •

    React Native dev? 6
  7. Flutter Documentation 7 https://flutter.io/docs/

  8. Flutter Documentation for Web/Android/ReactNative devs 8 https://flutter.io/docs/

  9. Develop & Release flow 9 Develop Build Release Setup

  10. Develop & Release flow 10 Develop Build Release Setup

  11. Dart 2 11 https://www.dartlang.org/dart-2

  12. Dart 2 in Flutter 12 https://github.com/flutter/flutter/wiki/Trying-the-preview-of-Dart-2-in-Flutter

  13. Dart 1 to Dart 2 13 Container( padding: EdgeInsets.all(16.0), child:

    Text("Flutter") ), Dart 1 new Container( padding: const EdgeInsets.all(16.0), child: new Text("Flutter") ), Dart 2
  14. Develop & Release flow 14 Develop Build Release Setup

  15. Build production app for Android - Step1 (Create key.properties) 15

    storePassword=<password from previous step> keyPassword=<password from previous step> keyAlias=key storeFile=<location of the key store file, e.g. /Users/<username>/key.jks>
  16. Build production app for Android - Step2 (Edit build.gradle) 16

    +def keystorePropertiesFile = rootProject.file("key.properties") +def keystoreProperties = new Properties() +keystoreProperties.load(new FileInputStream(keystorePropertiesFile)) android {
  17. Build production app for Android - Step3 (Edit build.gradle) 17

    +signingConfigs { + release { + keyAlias keystoreProperties['keyAlias'] + keyPassword keystoreProperties['keyPassword'] + storeFile file(keystoreProperties['storeFile']) + storePassword keystoreProperties['storePassword'] + } +} +buildTypes { + release { + signingConfig signingConfigs.release + } +}
  18. Build production app for Android - Step4 (flutter build apk)

    18 $ flutter build apk --preview-dart-2 Initializing gradle... 1.0s Resolving dependencies... 8.1s Running 'gradlew assembleRelease'... Skipping AOT snapshot build. Fingerprint match. Built build/app/outputs/apk/release/app-release.apk (9.2MB).
  19. Demo (Dev/Build/Release)

  20. Summary • Develop by Android Studio and VSCode • Flutter

    Documentation for Web/Android/ReactNative devs • Dart 2 ready • Build app of release version by terminal and IDE • Many contributing chance 20
  21. Appendix 21

  22. Speaker Deck https://speakerdeck.com/rkowase/try-flutter 22

  23. Qiita https://qiita.com/rkowase/items/56f6606b7e101d939e10 23

  24. Qiita 24 https://qiita.com/rkowase/items/f1012ef0738791dd6084

  25. GitHub 25 https://github.com/flutter/website/pull/907

  26. GitHub 26 https://github.com/flutter/plugins/pull/436