Looking for android Answers? Try Ask4KnowledgeBase
Looking for android Keywords? Try Ask4Keywords

Androidローダ


前書き

oncreateメソッドが呼び出されたときにバックグラウンドでデータをロードしたい場合は、Loaderはメモリリークを防ぐのに適しています。たとえば、oncreateメソッドでAsynctaskを実行し、別のAsyncTaskを再度実行するアクティビティが再作成されるように画面を回転させると、おそらくAsynTaskが2つ並行して実行されます。

パラメーター

クラス説明
LoaderManager 1つ以上のLoaderインスタンスを管理するためのActivityまたはFragmentに関連付けられた抽象クラス。
LoaderManager.LoaderCallbacks クライアントがLoaderManagerとやりとりするためのコールバックインターフェイス。
ローダ データの非同期読み込みを実行する抽象クラスです。
AsyncTaskLoader 作業を行うAsyncTaskを提供する抽象ローダー。
CursorLoader ContentResolverを照会してCursorを返すAsyncTaskLoaderのサブクラスです。

備考

Android 3.0で導入されたローダーを使用すると、アクティビティやフラグメント内のデータを非同期で読み込むことが容易になります。ローダーには次の特徴があります。

  • それらはすべてのアクティビティーフラグメントで使用できます。
  • それらは、データの非同期ロードを提供します。
  • 彼らはデータの出所を監視し、コンテンツが変更されたときに新しい結果を提供します。
  • 構成変更後に再作成されると、最後のローダーのカーソルに自動的に再接続します。したがって、データを再クエリする必要はありません。

ローダーを使用しない場合

バックグラウンドタスクを完了する必要がある場合は、ローダーを使用しないでください。 Androidは、Loaderが属しているActivities / Fragmentと共に破棄します。完了するまで実行しなければならないタスクを実行したい場合は、ローダーを使用しないでください。代わりに、この種のサービスにサービスを使用する必要があります。

ローダ 関連する例