Intereting Posts
Доступ к идентификатору / имени пользователя учетной записи Google через Android Использование VideoView для потокового или прогрессивного скачивания видео Android – переключение между передней и задней камерами во время записи видео Я хочу упаковать значение перечисления в Bundle и получить как перечисление (Как) Может ли виртуальное устройство Android использовать интернет локального компьютера? Карты Google google для Android показывают серые плитки, а не карту! Можно ли установить java fx на Android-телефон? Есть ли способ интегрировать Eclipse с Gradle в проект Android? Android BroadcastReceiver в действии Набор дополнений для набора андроидов для экрана предпочтений Android.app Fragments vs. android.support.v4.app с помощью ViewPager? Android Fatal Signal Error 11 SIGSEGV в разных версиях JellyBean Android Visualizer FFT / waveform влияет на объем устройства? Как рисовать путь в представлении в android Могу ли я иметь пример отображения тоста с использованием runOnUiThread.

Как работает getContentResolver ()?

Я просмотрел курс о ContentProvider в Интернете, демонстрирующий, как определить и использовать ContentProvider .

Я был смущен тем, что использовал метод getContentResolver() . Что возвращает этот метод?

Мой ContentProvider не установлен, и код просто пишет, что getContentProvider().query() .

Я не понимаю, как работает ContentProvider .

Solutions Collecting From Web of "Как работает getContentResolver ()?"

Он возвращает Content Resolver.


Что такое Content Resolver?

Content Resolver – это единственный глобальный экземпляр вашего приложения, который обеспечивает доступ к вашим (и другим приложениям) контент-провайдерам. Content Resolver ведет себя точно так же, как следует из его названия: он принимает запросы от клиентов и решает эти запросы, направляя их поставщику контента с определенным полномочием. Для этого Content Resolver хранит сопоставление от властей поставщикам контента. Этот проект важен, поскольку он позволяет использовать простые и безопасные средства доступа к другим провайдерам контента.

Средство Content Resolver включает методы CRUD (создание, чтение, обновление, удаление), соответствующие абстрактным методам (insert, delete, query, update) в классе Content Provider. Content Resolver не знает реализации поставщиков контента, с которыми он взаимодействует (и не должен знать); Каждому методу передается URI, который определяет контент-провайдера для взаимодействия.


Что такое контент-провайдер?

Принимая во внимание, что Content Resolver обеспечивает абстракцию от контент-провайдеров приложения, поставщики контента предоставляют абстрагирование от базового источника данных (т. SQLite database ). Они предоставляют механизмы для определения безопасности данных (т. Е. Путем обеспечения разрешений на чтение и запись) и предлагают стандартный интерфейс, который соединяет данные в одном процессе с кодом, запущенным в другом процессе.

Поставщики контента предоставляют интерфейс для публикации и потребления данных, основанный на простой модели URI-адресации с использованием content:// schema . Они позволяют отделять ваши уровни приложений от базовых слоев данных, делая агностик-источник данных вашего приложения абстрактным источником данных.

Источник – androiddesignpatterns

GetContentResolver () возвращает экземпляр ContentResolver для пакета вашего приложения.

Вставка его с сайта developer.android.com

Поставщики контента управляют доступом к структурированному набору данных. Они инкапсулируют данные и предоставляют механизмы для определения безопасности данных. Поставщики контента – это стандартный интерфейс, который соединяет данные в одном процессе с кодом, запущенным в другом процессе.

Когда вы хотите получить доступ к данным в поставщике контента, вы используете объект ContentResolver в Контексте вашего приложения для связи с поставщиком как с клиентом. Объект ContentResolver связывается с объектом-провайдером, экземпляром класса, который реализует ContentProvider. Объект поставщика получает запросы данных от клиентов, выполняет запрошенное действие и возвращает результаты.

http://developer.android.com/guide/topics/providers/content-providers.html