Можно ли написать собственный поставщик контента для существующей системной базы данных?

StackOverflow https://stackoverflow.com/questions/1877343

  •  18-09-2019
  •  | 
  •  

Вопрос

Не уверен в абсолютной полезности этого, но кажется, что это возможно и полезно.

Можете ли вы продлить ContentProvider предоставлять URIs представление новых запросов (т. е. объединений нескольких таблиц, не указанных в существующих URIs) для существующей системной базы данных?

Альтернативой кажется то, что мне нужно написать серию cursor queries затем присоединитесь к ним - похоже, это много ненужного дублирования кода.

Я пробовал это для контактов database в качестве упражнения, но любви пока нет.

Суть, похоже, в том, что я не могу открыть database в другом пакете на этапе установки.

Я здесь просто полностью в левом поле?

Это возможно, поскольку я новичок в обоих Java and Android.

Комментарии и/или указатели на соответствующие ресурсы приветствуются.

Спасибо,

Стив

Это было полезно?

Решение

Можете ли вы расширить ContentProvider для предоставления URI, представляющих новые запросы (то есть соединения на несколько таблиц, не указанных существующими URI) для существующей базы данных системы?

Не совсем, только потому, что у вас нет прямого доступа к существующим системным базам данных, с точки зрения SQLite.Теперь, создавая ContentProvider который выполняет ваши соединения за вас, в качестве меры повторного использования, безусловно, выполним, хотя я бы беспокоился о накладных расходах на производительность при нескольких переходах между процессами.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top