Структура 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.
Добавить комментарий
Для отправки комментария вам необходимо авторизоваться.