目次
- 1この講座について
- 2イントロダクション
- 3前提知識
- 4この講座で学べること
- 5概要
- 6アプリの概観
- 7タスク:ライフサイクルメソッドについて知り、基本ログを追加する
- 7.1ステップ1:onCreate()メソッドについて調べ、ログを追加する
- 7.2ステップ2:onStart()メソッドを実装する
- 8タスク:ログ用にTimberを使う
- 8.1ステップ1:GradleにTimberを追加する
- 8.2ステップ2:Applicationクラスの作成とTimberの初期化
- 8.3ステップ3:Timberログ文を追加する
- 9タスク:ライフサイクルのユースケースについて知る
- 9.1ユースケース1:アクティビティのオープンとクローズ
- 9.2ユースケース2:アクティビティから離れた後に戻る
- 9.3ユースケース3:部分的にアクティビティを隠す
- 10タスク:フラグメントのライフサイクル
- 11完成済みプロジェクト
- 12まとめ
- 12.1アクティビティのライフサイクル
- 12.2Logによるログ
- 12.3Timberによるログ
この講座について
この記事はAndroid Kotlin基礎講座の一部です。これ以外のAndroid Kotlin基礎講座(全10回)も一緒に受講することでAndroidアプリの開発手法、およびKotlinの基礎知識を学ぶことができます。全講座はAndroid Kotlin基礎講座にリスト化されていますので参考にしてください。
またこの記事ではGoogle Developers Training teamによってGoogle Codelabsに公開されているAndroid Kotlin Fundamentals courseを日本語に翻訳しつつ、筆者の考察も交えながら発信しています。オリジナルのサイト(英文)はこちら。
イントロダクション
レッスン4に含まれている記事は以下になります。
この記事では、Androidアプリにおけるアクティビティとフラグメントのライフサイクルの基礎について学習します。アクティビティライフサイクルとはアクティビティがそのライフタイムの中でなり得る状態のまとまりのことです。
ライフサイクルはアクティビティが最初に作成されたときから、アクティビティが破棄され、システムがそのアクティビティのリソースを再利用するまでの期間です。前回までの記事で作成したアプリでユーザーがアクティビティ間を遷移したように、アクティビティはそれぞれのアクティビティのライフサイクルのうちの異なる状態を遷移します。
フラグメントライフサイクルはアクティビティのライフサイクルに非常に似ています。この記事では主にアクティビティに焦点を当てていますが、最後のほうで簡単にフラグメントのライフサイクルについても説明します。
Android開発者であるためには、アクティビティのライフサイクルについて理解することは必須と言えます。もしあなたが開発中のアプリのアクティビティがライフサイクルの状態の変化に正しく対応していない場合、アプリはバグを生み出したり、ユーザーを困惑させるような挙動を起こしたり、Androidのシステムリソースを不用意に浪費してしまったりします。
Androidライフサイクルを理解し、ライフサイクルの状態変化に適切に対応することは良いAndroid開発者として非常に重要なことです。
前提知識
- アクティビティとは何か、またアクティビティの作成方法
- アクティビティのonCreate()メソッドが何をしているか、またメソッド内で行われている処理について
- アクティビティのXMLレイアウトの作成方法、またレイアウトを動作時に更新する方法
この講座で学べること
- Logcat(Androidコンソール、またはAndroidモニターと呼ばれることもあります)にログ情報を表示させる方法
- アクティビティとフラグメントのライフサイクルの基礎、またアクティビティが状態遷移する際に呼びだされるコールバックについて
- ライフサイクルのコールバックメソッドにライフサイクル中の違うタイミングで処理をさせるようにするためのオーバーライドの仕方
- ログ用のTimberライブラリの使い方
概要
- DessertClickerというスターターアプリを修正してLogcatにログ情報を表示させる
- ライフサイクルのコールバックメソッドをオーバーライドしアクティビティの状態の変化をログに記録する
- アプリを起動しアクティビティの開始、停止、再開を知らせるログ情報を記録する
- Timberライブラリを使用するように修正する
- AndroidTriviaアプリにログを追加し、フラグメント状態の変化をモニターする
コメント