Структура URI контента в Android

Структура URI контента в Android

Мы сравниваем поставщик контента с веб-сайтом, потому что он отвечает на входящие URI. То есть для получения данных от поставщика контента достаточно просто указать URI. Однако полученные при этом данные оформлены в строки и столбцы, представленные Android-объектом cursor. Сейчас мы рассмотрим структуру URI для извлечения данных именно в этом контексте.

URI-идентификаторы контента в Android похожи на URI в HTTP, но имеют префикс content и следующую общую форму:

content:////

или

content://имя-источника/сегмент-пути1/сегмент-пути2/…

Вот пример URI, который идентифицирует заметку с номером 23 в базе данных для заметок:

content://com.google.provider.NotePad/notes/23

После префикса content: URI содержит уникальный идентификатор источника, который используется для поиска поставщика в реестре поставщиков. В предшествующем примере частью источника URI является com.google.provider.NotePad.

/notes/23 — это часть пути URI, специфичная для каждого поставщика. Порции notes и 2 3 называются сегментами пути. Документирование и интерпретация части пути и сегментов пути является обязанностью поставщика.

Разработчик поставщика контента обычно делает это с помощью объявлений констант в Java-классе или Java-интерфейсе в пакете реализации этого поставщика. Более того, первая часть пути может указывать на коллекцию объектов. Например, /notes указывает на коллекцию или подкаталог заметок, а /2 3 — на конкретный элемент заметки.

Для заданного URI поставщик должен извлекать идентифицируемые этим URI строки. Кроме того, поставщик должен изменить содержимое данного URI с помощью методов изменения состояния insert, update и delete.

Поделиться в соц. сетях

Опубликовать в Google Buzz
Опубликовать в Google Plus
Опубликовать в LiveJournal
Опубликовать в Мой Мир
Опубликовать в Одноклассники
Опубликовать в Яндекс

Добавить комментарий