2011-01-25 2 views
0

Я только что закончил обзор учебника «Блокнот» и посмотрел, как они делают свою базу данных. Если вы хотите развернуть его в базу данных с несколькими таблицами, вы бы просто добавили новый класс поставщика, который сделал все, что возможно для этой таблицы?Как управлять многозадачной базой данных?

Second Если вы не возражаете ответить на второй, слегка связанный вопрос, что такое URI и как я могу использовать их с Android? Я искал и возвращался только с «Универсальным идентификатором ресурсов».

Спасибо ~ аэдона

ответ

2

Идея поставщика является то, что он имеет дело с типом общественного ресурса. Таким образом, у вас есть поставщик контактов или поставщик заметок. Поставщик никак не привязан к базе данных. У поставщика заметок может быть доступ к десяткам таблиц за интерфейсом поставщика.

Вы можете думать о том, что интерфейс провайдера является публичным API для ваших ресурсов. Он доступен для всех приложений на телефоне в качестве механизма совместного использования общего ресурса. Способ реализации этого API - это деталь реализации для самого провайдера. Поставщик может вообще не использовать базу данных (возможно, он использует только веб-службу), или он может использовать проект multitable/multidatabase.

URI - это универсальный индикатор ресурса. Заметки Клиффа таковы: Ури имеет схему и локатор. В android, схема, часть uri перед:, используется для определения того, что вы планируете делать с uri. URI, например смс: // 5555555551, регистрируется для запроса текста, который будет отправлен 555-555-5551. 555-555-5551 упоминается как «данные».

Существует гораздо больше, чтобы читать и понимать here. Достаточно сказать, что в Android URI часто используются для совместной совместной работы. Например, в моем предыдущем примере я забочусь только о том, что отправлен sms, а не как он отправляется. Это позволяет многим приложениям регистрироваться, чтобы отправлять sms-сообщения, приложения лучше, возможно, те, которые Android встроил в платформу.

+0

Я понимаю, что это не означает, как вы расширили бы этот пример, чтобы использовать несколько таблиц базы данных, но на основании этого вопроса казалось, что этот ответ может быть некоторым необходимым объяснением. Если у вас есть дополнительные вопросы об использовании нескольких таблиц или баз данных, я также могу попытаться ответить на них. –

+0

Благодарим вас за подробный ответ. Итак, какой был бы лучший способ справиться с 5-страничной базой данных? – AedonEtLIRA

+0

Это действительно зависит от того, что вы пытаетесь служить. Это приложение для резервирования, в котором все 5 таблиц поддерживают резервирование. И вы хотите, чтобы другие приложения могли подключаться к вашему хранилищу данных бронирования? Если это так, один контент-провайдер будет отличным. Каждая база данных представляет собой отдельный автономный ресурс, который вы хотите открыть миру? Я не могу придумать пример на 5, но вопрос, который вы должны задать, - «что есть/есть ресурсы, которые я надеюсь выставить миру с помощью моего поставщика контента?» Затем создайте поставщика контента для поддержки этого ресурса. Имеет ли это смысл? –

Смежные вопросы