@FoxInSox

Что такое Content Provider?

В недавней статье описывается архитектура приложения, в котором присутсвует определние Content Provider'a:

Контент провайдер очень мощная штука с уведомлениями об изменениях данных и это все из коробки. Юзаем в основном как обвертку над базой. Способа как туда правильно впихнуть загрузку данных из инета не нашел.


В документации абсолютно другое:

Content providers are one of the primary building blocks of Android applications, providing content to applications. They encapsulate data and provide it to applications through the single ContentResolver interface. A content provider is only required if you need to share data between multiple applications.


Т.е. по видимому автор статьи имел ввиду другой Контент провайдер, или нет?
  • Вопрос задан
  • 6123 просмотра
Пригласить эксперта
Ответы на вопрос 3
@Mintormo
Правильно в документации: компонент, раздающий данные для нескольких приложений (хотя может и только одному, но сама идея компонента в предоставлении доступа к данным для нескольких приложений). Речь об одном и том же. В Android есть только один Content Provider.
Ответ написан
Комментировать
@nonrblGyN4ik
Нет, просто автор статьи не обладает даром понятного объяснения:)
Ответ написан
Комментировать
atetc
@atetc
Админ Android dev-s чата: https://goo.gl/8JKF1f
Content Provider - сущность, являющаяся независимой оберткой над источниками данных (бизнес-логика приложения может даже не знать как именно она устроена: БД, файлы, сервер или еще что-то), которая также следует REST-подобной архитектуре и стремится привести данные в обобщенный тип.

Кратко можно тут ознакомиться habrahabr.ru/post/132720

P.S. Почему в документации пишут далеко не все достоинства Content Providers - непонятно, объяснений не встречал, но тема там крайне плохо раскрыта, т.к. у этой сущности много интересных особенностей: например в документации ни слова о том, что они использовались для реализации классических A, B, C паттернов by Virgil Dobjanschi (конференция Google IO 2010 www.youtube.com/watch?v=xHXn3Kg2IQE ).
Тема на самом деле очень обширна, в одном абзаце это не раскрыть, вам нужно изучать/практиковать. Актуальность на сегодня контент провайдеры не потеряли, даже наоборот.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы