Content providers provide REST-like URLs to retrieve or manipulate data.
Content URIs in Android look similar to HTTP URIs, except that they start with content and have the general form
content://*/*/*
or
content://authority-name/path-segment1/path-segment2/etc...
The URI to identify a directory or a collection of notes in the
NotePadProvider
database is
content://com.google.provider.NotePad/Notes
The URI to identify a specific note is
content://com.google.provider.NotePad/Notes/#
where # is the id of a particular note.
Here's an example URI that identifies a note numbered 9 in a database of notes:
content://com.google.provider.NotePad/notes/9
After content:
the URI contains a unique identifier for the authority,
which is used to locate the provider in the provider registry.
In the preceding example,
com.google.provider.NotePad
is the authority portion of the URI.
/notes/9
is the path section of the URI that is
specific to each provider.
The notes
and
9
portions of the path section are called path segments.
Each provider should interpret the path section and path segments of the URIs.
The following code lists examples of URIs that some data providers accept:
content://media/internal/images content://media/external/images content://contacts/people/ content://contacts/people/9
media (content://media)
and contacts (content://contacts)
don't have a fully qualified structure.
A content provider's URIs also resemble the names of stored procedures in a database.
The provider is also expected to alter content at this URI using any of the state-change methods: insert, update, or delete.