2012-03-21 10 views
3

誰かがこのチュートリアルで制御の流れを説明できますか:http://www.vogella.de/articles/AndroidSQLite/article.html#tutorialusecpコンテンツプロバイダのライフサイクル/フロー制御?

私は正しい流れを得ることができません。私はこのコンテンツプロバイダの初心者です。

実際にDBがいつ作成されるのか、ライフサイクルの方法は何か、このプロジェクトのメソッド実行の順序は何ですか?

+0

良い質問です。:d – 5hssba

答えて

3

最後にFlow !! :

まず、コンテンツプロバイダのonCreateは、アプリケーションがマニフェストでこれを登録したときに起動されます。

次に、最初のアクティビティのonCreate、つまりToDodOverviewActivityのonCreateです。 fillData()への呼び出しにはinitLoader()コールがあり、呼び出しはローダーのonCreateLoaderを呼び出します。

はその後、ここ

CursorLoader cursorLoader = new CursorLoader(this, 
      MyTodoContentProvider.CONTENT_URI, projection, null, null, null); 

でローダの作成が行われます。 ContentResolverに照会してCursorを返すローダです。このクラスは、カーソルを照会するための標準的な方法でLoaderプロトコルを実装し、AsyncTaskLoaderを基にバックグラウンドスレッドでカーソル照会を実行し、アプリケーションのUIをブロックしません。

これは、DataHelperとToDoTableなどのonCreate()への呼び出しにつながります。ここでは誰もがSQLiteOpenHelperについてのフローを知っています。

最後にonLoadFinished()が呼び出され、カーソルが交換されてアダプタが更新されます。