3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

I/O Extended 2019 メモ for Android / Flutter

Last updated at Posted at 2019-05-19

Google I/O Extended 2019

イベント詳細
https://gdg-tokyo.connpass.com/event/128867/

全体的な I/O Android まとめ
Overview of Google I/O 2019 for Android

Kotlin Coroutines

Jetpackの Kotlin Coroutines サポート

特定のスレッドに束縛されない、Coroutinesは 中断可能な計算処理インスタンス

サポートまでの経緯

Androidの非同期処理で使われることが多い
今まで
Apiやデータの加工処理など、メインスレッドでなく別スレッドで実行しなければいけない重い処理

  • Thread
  • AsynkTask

↓ 辛い....

  • RxJava -> なんでもできすぎちゃう
  • LiveData -> メインスレッドでしか使えない

↓ もうちょい...!

  • Coroutines ⭐️

  • Update

  • ViewModelScope (jobのキャンセルなどいい感じにやってくれる)

  • LifeCycleScope (LifeCycleに合わせていい感じにやってくれる launchWhenStarted)

  • livedata() ApiなどのレスポンスをLiveDataで返してくれる

  • Room (SQLite Helper)でのsuspend function(中断関数)

  • CoroutineWorker テスト周り

参考

非同期処理はKotlin Coroutines ファースト
読みやすい、シンプル、高機能

Android Jetpack

What's new in Jetpack

Kotlin First!

Google、Androidにおける「Kotlinファースト」強化を表明。Google I/O 2019

新しいもの

Benchmark -> シンプルにベンチマークを測れる
CameraX -> カメラを簡単に使う シンプルにかける
Security -> 6.0以降 暗号化ライブラリ 暗号化にまつわるベストプラクティス
SavedState -> アプリ終了後にデータを保持するための仕組み
Jetpack Compose -> ReactやVueなどにインスパイアされたもの。宣言型でUIを構築できる

Android Studio

Google I/O 19 Extended : Quick Recap Android Studio 3.5

Android Studio 3.5 beta
https://android-developers.googleblog.com/2019/05/android-studio-35-beta.html

  • Project Marble

6ヶ月の定期的なAndroid Studioアップデートプロジェクト

↓記事になっている
https://medium.com/androiddevelopers/tagged/project-marble

Googleは当初から、安定性に課題感を持っていた (誰でも、ビルドエラーやクリーンビルド、データバインディングのエラーには直面したことがある)

ビルド速度の改善 -> パーサー
エラー個所を特定しやすく

Incremental Build

Apply Change
インスタントラン機能の廃止
デルタプッシュ(差分送信) Android Oreo以降

Emulatorの実行速度改善
ヘッドレスモード

dataBindingのビルドエラー改善

レイアウトエディタ
ConstraintsLayoutエディターが、よりわかりやすく

デザインデータ
バッジインポート / バルクインポート

カラーピッカーとインスペクタ
実機操作と連動する
インスペクタの3Dレイヤー表示

常に、最新を使うように

Firebase

  • Firebase Crashrytics Big Query Support
    ベロシティアラートの閾値を設定できるようになった
    performance Monitoring -> Webにも!

  • Firebase Test Lab
    Wear / App Bundle / Android Qに対応

  • Firebase Authentication
    Blocking function

Android Q (Beta)

Android @ Google I/O 2019

プライバシー
ダーク テーマ
ジェスチャー ナビゲーション
Bubbles
共有の改善

Privacy
Android Qプライバシーチェックリスト
https://developer.android.com/preview/privacy/checklist?hl=ja

Dark Theme
style別で用意
themeで別設定
無理矢理も可能 -> forceDarkAloud

Gesture Navigation
新たなUI操作
d.android.com/preview/features/gesturalnav

edge-to-edge
下のナビゲーション バーと 上のステータスバーを透明にする

Bubbles
通知。丸を押すと、Activityがひらく。NotificationBuilderで使う
ユーザーがOptoutした場合普通の通知になる

Sharing
https://developer.android.com/preview/features/sharing

Settings Panel
https://developer.android.com/reference/android/provider/Settings.Panel

Flutter

v1.5が発表
https://developers.googleblog.com/2019/05/Flutter-io19.html

Material Theming
アプリのTheme(デザイン)をマテリアルデザインで実現するためのクラス群

Building beautiful, flexible user interfaces with Flutter, Material Theming, and official Material Components (MDC)

DarkMode
シンプルに対応できそうな印象

Sliderカスタマイズ

natural language Labeling

Cupertino
iOS風ウィジェットも充実
https://flutter.dev/docs/development/ui/widgets/cupertino

Desktop App作れる

  • Chrome OS
  • macOS
  • Linux
  • Windows

Flutter for Web

  • アプリのようなUI
  • インタラクティブ性が高く、グラフィックスを多用したもの

Google、「Flutter for Web」発表。FlutterからWebアプリを生成。Flutterはマルチプラットフォーム対応のフレームワークに。Google I/O 2019

Dart

Announcing Dart 2.3: Optimized for building user interfaces

  • Productive
  • Fast
  • Multi-platform

DartはVM上で動くため、hot-reloadなどを含め、開発効率が高い

3
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?