関連のデータを保存および管理するためのクラスです。クラスを使用すると、画面の回転などの設定の変更後にデータを引き継ぐことができます。プロジェクトにインポートするには、ライフサイクルのリリースノートの依存関係を宣言する手順をご覧ください。フレームワークによって管理されます。コントローラの破棄や再作成を行うよう決定する場合があります。関連のデータはすべて失われます。アプリではそのアクティビティのいずれかにユーザーのリストを含める場合があります。設定の変更によってアクティビティが再作成されると、その新しいアクティビティはユーザーのリストを再取得する必要があります。バンドルからデータを復元できますが、このアプローチが適しているのは、シリアル化してからシリアル化解除することができる少量のデータの場合だけです。ユーザーやビットマップのリストのようにデータの量が多くなる可能性がある場合には適していません。コントローラでは実行に時間がかかる非同期呼び出しを頻繁に行う必要があることです。コントローラは非同期呼び出しを管理し、破棄された後にシステムが呼び出しのクリーンアップを行ってメモリリークが発生しないようにする必要があります。この管理ではメンテナンスを何度も実施する必要があり、設定の変更によってオブジェクトが再作成された場合にはすでに行った呼び出しを再度行わなければならないこともあるため、リソースが無駄になります。システムとのやり取り(権限のリクエストなど)を行うことです。コントローラに対してデータベースやネットワークからのデータ読み込みも行うよう要求すると、クラスが肥大化することになります。つのクラスですべて処理しようとすることになり、テストも困難になります。コントローラのロジックから切り離すことで、複雑さが軽減され、効率性が高まります。ヘルパークラスが用意されています。オブジェクトは設定の変更時に自動的に保持されるため、このオブジェクトが保持しているデータは後続のアクティビティやフラグメントのインスタンスがすぐに利用できます。}次のように、リストにはアクティビティからアクセスできます。インスタンスは、最初のアクティビティで作成されたものと同じです。メソッドを呼び出します。コンテキストへの参照が保持されている可能性があるクラスを参照しないでください。特定のインスタンスよりも生存期間が長くなるように設計されています。対象とするテストを簡単に作成することもできます。オブジェクトが認識されないためです。オブジェクトなど)を含めることができます。オブジェクトなど)への変更を監視しないでください。拡張したものであるため)。完全に消えるまで(アクティビティの場合は終了時、フラグメントの場合はデタッチ時)メモリ内に残ります。回転を行ってから終了するまでのアクティビティのさまざまなライフサイクルの状態を示します。ライフタイムも示されています。この図はアクティビティの状態を示していますが、フラグメントのライフサイクルの状態も基本的には同じです。デバイスの画面が回転されたときなど、アクティビティの生存期間全体を通して複数回呼び出されることがあります。リクエストしてからアクティビティが終了して破棄されるまで存在します。フラグメント間でデータを共有するよくあるのは、アクティビティ内の複数のフラグメントが互いにやり取りする必要があるケースです。ディテール関係にあるフラグメントのケースについて考えてみます。このケースは決して簡単ではありません。つのフラグメントを互いにバインドする必要があるためです。どちらのフラグメントも、もう一方のフラグメントがまだ作成されていないシナリオ、または参照できないシナリオに対処する必要があります。オブジェクトを使用します。共有し、このやり取りを処理できます。}両方のフラグメントが、それらを含むアクティビティを取得することに注意してください。インスタンスを受け取ります。この方法には次のようなメリットがあります。アクティビティは何もする必要がなく、フラグメント間のやり取りについて何も認識する必要がありません。コントラクト以外は互いについて認識する必要がありません。フラグメントの一方が存在しなくなっても、もう一方は通常どおり処理を継続します。フラグメントはそれぞれ独自のライフサイクルを持ち、もう一方のフラグメントのライフサイクルによる影響を受けません。何の問題もなく処理を継続します。データとデータベースの同期を維持することができます。他のいくつかのクラスと組み合わせて使用することで、ローダーの代わりにできます。コントローラをデータ読み込み処理から分離できます。これにより、クラス間の強い参照を減らすことができます。使用してデータベースのコンテンツを監視することがあります。組み合わせて使用することで、ローダーの代わりにできます。使用すると、デバイスの設定の変更後にもデータが引き継がれるようになります。