3. Зачем?
сущности предназначенные для обобщения данных
источники данных превращаются в поставщиков данных
с функцией передачи состояния представления
(REST)
доступ к которым становится возможен через URI
табличное представление или файлы
4. Кейсы:
Подписка на изменения (паттерны)
Шэринг данных для второго или партнерского
приложения
Поиск в лаунчерах (Google etc.)
SyncAdapter
AsyncQueryHandler
5. Преемущества
Абстракция слоя хранения данных, более
архитектурное решение, “проще работать”
Управление открытием/закрытием SQLite БД
Доступ через один класс
Возможность работы не только с таблицей (курсором),
но и файлами
7. Что нужно для реализации?
объявить в Манифесте
http://developer.android.com/intl/ru/guide/topics/manifest/provider-
element.html
переопределить query(), insert(), update(), delete(), getType(), onCreate()
работа в отдельном потоке