目次
- 1この講座について
- 2イントロダクション
- 2..1Lesson 6に含まれている記事
- 3前提知識
- 4この講座で学べること
- 5概要
- 6アプリの概観
- 7タスク:スターターコードを調べる
- 7.1ステップ1:スターターアプリをダウンロード、起動する
- 7.2ステップ2:コードを調べる
- 8タスク:ViewModelを追加する
- 8.1ステップ1:SleepTrackerViewModelを追加する
- 8.2ステップ2:SleepTrackerViewModelFactoryを追加する
- 8.3ステップ3:SleepTrackerFragmentをアップデートする
- 8.4ステップ4:ビューモデル用のデータバインディングを追加する
- 9概念:コルーチン
- 9.1アーキテクチャコンポーネントを用いたKotlinコルーチン
- 9.2Roomとディスパッチャー
- 10タスク:データを収集・表示する
- 10.1ステップ1:DAO関数をsuspend関数にする
- 10.2ステップ2:データベース操作用のコルーチンを設定する
- 10.3ステップ3:Startボタン用のクリックハンドラーを追加する
- 10.4ステップ4:データを表示する
- 10.5Step 5: Stopボタン用のクリックハンドラーを追加する
- 10.6ステップ6:Clearボタン用のクリックハンドラーを追加する
- 11完成済みプロジェクト
- 12まとめ
この講座について
この記事はAndroid Kotlin基礎講座の一部です。これ以外のAndroid Kotlin基礎講座(全10回)も一緒に受講することでAndroidアプリの開発手法、およびKotlinの基礎知識を学ぶことができます。全講座はAndroid Kotlin基礎講座にリスト化されていますので参考にしてください。
またこの記事ではGoogle Developers Training teamによってGoogle Codelabsに公開されているAndroid Kotlin Fundamentals courseを日本語に翻訳しつつ、筆者の考察も交えながら発信しています。オリジナルのサイト(英文)はこちら。
イントロダクション
アプリに対するユーザーの満足を得るための最も重要な優先事項の一つは、UIが常に正しく反応し、スムーズに動作することです。UIのパフォーマンスを向上させる方法の一つはデータベース操作などのロングランニングタスクをバックグラウンドで行わせることです。
この記事では、TrackMySleepQualityアプリにおけるユーザーが目にする部分を実装します。またKotlinのコルーチンを使ってデータベース操作をメインスレッドから切り離します。
Lesson 6に含まれている記事
前提知識
- アクティブ、フラグメント、ビューやクリックハンドラーを使った基本的なユーザーインターフェース(UI)の作り方
- フラグメント間の遷移、またフラグメント間で簡単なデータをsafeArgsを用いて渡す方法
- ビューモデル、ビューモデルファクトリー、transformation、LiveDataについて
- Roomデータベース、DAOの作り方と実体の定義方法
- またスレッドとマルチプロセッシングの概念について知っていると役立ちます。
この講座で学べること
- Androidにおいて、どのようにスレッドが機能しているか
- データベース操作をメインスレッドから切り離すためのKotlinコルーチンの使い方
- TextViewにフォーマットされたデータを表示する方法
概要
- データベースからデータを取得・表示したり、データベースに保存するようにTrackMySleepQualityアプリを拡張
- ロングランニングタスクであるデータベース操作をコルーチンを使ってバックグラウンドで動作させる
- ナビゲーションとスナックバーの表示のトリガーとしてのLiveDataの使用
- ボタンを有効化・無効化するためにLiveDataを使用
コメント