ContentProvidersとContentResolverの違いは何ですか? SQLite
データベースは必要ありません。メディア向けのアプリケーションを開発しています。
質問する
42482 次
4 に答える
64
ここでいくつかの説明を見つけました。要約すれば
Content Resolverは、URI を特定のContent providerに解決します。
コンテンツ プロバイダーは、コンテンツをクエリするためのインターフェイスを提供します。
コンテンツ プロバイダーに問い合わせる方法は次のとおりです。contentResolverInstance.query(URI,.....)
于 2013-09-18T14:31:10.807 に答える
50
ContentProviders
データベースを他の部分から抽象化するために使用され、データベースと UI/他のクラスの間のインターフェイスとして機能します。アプリ データを他のアプリと共有するには、独自の ContentProvider を作成する必要があります。
ContentResolver
に基づいて適切な ContentProvider を選択するために使用されますContentUris
。ContentUri は次のようになります
content://com.android.contacts/contacts/3
- content://はスキームと 呼ばれ、ContentUri であることを示します。
- com.android.contactsはコンテンツ権限と呼ばれ、ContentResolver はそれを使用して一意のプロバイダー (この場合は ContactProvider) に解決します。
- contactは、プロバイダーのデータの一部のサブセット (テーブル名など) を識別するパスです。
- 3は、データのサブセット内の行を一意に識別するために使用されるIDです。
注 : 独自のアプリでも、このルートを使用してデータを処理できます。
于 2016-11-12T11:34:16.137 に答える