3

Android dev guide を読んだところ、コンテンツ プロバイダー用にさまざまなクラスを実装できることがわかりました。そう、

  1. 1 つの Android アプリに多数のコンテンツ プロバイダが存在するか、それとも 1 つのコンテンツ プロバイダしか存在しないか?
  2. そのようなさまざまなコンテンツ プロバイダ クラスを適切に実装する方法は?

これが私が開発ガイドから読んだものです:

プロバイダーは、Android アプリケーションで 1 つ以上のクラスとして実装します

http://developer.android.com/guide/topics/providers/content-provider-creating.html

4

4 に答える 4

5

こちらのドキュメントからわかるように、必要な数だけ実装できます。<provider>コンテンツ プロバイダーを登録するには、対応するタグを Android マニフェストに追加する必要があります。

ただし、ほとんどの場合、複数のコンテンツ プロバイダーは必要ありません。複数のテーブルを処理できるため、通常は 1 つで十分です。アプリで 2 つ以上の個別のデータ エンティティへのパブリック アクセスを提供する場合にのみ、複数必要です。

于 2012-05-04T15:55:24.537 に答える
1
  1. 必要な数のコンテンツプロバイダーを作成できます。しかし、あなたはそれらを必要としますか?
  2. どのコンテンツプロバイダークラスを実装しますか?このページをよく読んだら、2つのページへのリンクが含まれていることがわかるはずです。
    1. http://developer.android.com/guide/topics/providers/content-provider-basics.html-コンテンツプロバイダーの基本
    2. http://developer.android.com/guide/topics/providers/content-provider-creating.html#ContentProvider-ContentProviderクラスの実装

最初にそれらのページを読むことをお勧めします。Googleは、コンテンツプロバイダー、チュートリアル、および例に関する詳細情報を提供しています。

于 2012-05-04T15:55:05.620 に答える
1

アプリケーションごとに 1 つのコンテンツ プロバイダーのみを実装する必要があるというルールはありません。プロジェクトが要求する場合は、そうすることができます。

アプリケーション パッケージに複数のコンテンツ プロバイダーを実装する場合は、受信データ要求を各コンテンツ プロバイダーに適切にルーティングするために、各コンテンツ プロバイダーの機関部分が一意であることを確認してください。

ただし、コンテンツ プロバイダーが多すぎると混乱する可能性があり、必須ではありません。複数のコンテンツ プロバイダーが存在すると思われる唯一のシナリオは、アプリケーションに複数のデータベースがあり、それらすべてのデータベースを外部のアプリケーションと共有したい場合です。データベースごとに個別のコンテンツ プロバイダーを使用して、データベースを外部と共有できます。

それが役に立てば幸い。

于 2013-12-03T12:31:46.180 に答える
1

アプリごとに必要な数のコンテンツ プロバイダーを使用 (提供および使用) できます。もちろん、異なるコンテンツ URI が必要です。

ドキュメント (リンク) で概説されている用途に加えて、データ ストレージへのアクセスなど、他の目的でコンテンツ プロバイダーを使用できます。コンテンツ URI にはパラメーターを含めることができるため、Web サービスと同様にコンテンツ プロバイダーを使用できます。

于 2012-05-04T15:53:01.183 に答える