Content_Provider を構築しようとしていますが、Base_path で行き詰っています....
たとえば、次のようなテーブル名の到着があります。
CONTENT_URI に名前を付けるにはどうすればよいですか? 誰でも私を助けることができますか?
前もって感謝します !
Content_Provider を構築しようとしていますが、Base_path で行き詰っています....
たとえば、次のようなテーブル名の到着があります。
CONTENT_URI に名前を付けるにはどうすればよいですか? 誰でも私を助けることができますか?
前もって感謝します !
ドキュメントから:
コンテンツ
URIはURI、プロバイダ内のデータを識別する です。コンテンツ URI には、プロバイダー全体の記号名 (その機関) と、テーブルを指す名前 (パス) が含まれます。クライアント メソッドを呼び出してプロバイダー内のテーブルにアクセスする場合、テーブルのコンテンツ URI が引数の 1 つになります。上記のコード行では、定数にユーザー辞書の「単語」テーブルの
CONTENT_URI内容が含まれています。URIContentResolver オブジェクトは URI の権限を解析し、それを使用して、既知のプロバイダーのシステム テーブルと権限を比較することで、プロバイダーを "解決" します。その後、ContentResolver はクエリ引数を正しいプロバイダーにディスパッチできます。ContentProvider は、コンテンツ URI のパス部分を使用して、アクセスするテーブルを選択します。通常、プロバイダーには、公開する各テーブルのパスがあります。
コードの前の行では
URI、「words」テーブルの完全な内容は次のとおりです。
content://user_dictionary/wordsここで、user_dictionarystring はプロバイダーの機関であり、words string はテーブルのパスです。文字列 content:// (スキーム) は常に存在し、これを content として識別しますURI。
したがって、 にはcontent_uriと がありauthorityますbase_path。はContentResolver、パーツを使用しauthorityて選択するプロバイダーを決定し、パーツを使用base_pathしてデータを提供するテーブルを決定します。したがって、単純化すると、base_path通常はプロバイダー内の特定のテーブルのパスです。