Цель: база данных обновления от данных XML
Процесс:
Довольно стандартный материал до операций дб. Проблема состоит в том, что операции CRUD не сделаны в ContentProvider
а скорее использование ContentResolver
таким образом, вставка, например, похожа resolver.insert(CONTENT_URI, contentValues)
. ContentResolver API, кажется, ничего не имеет, принадлежал транзакции, и я не могу использовать bulkInsert
так как я вставляю в 2 таблицы периодически (плюс, я хочу иметь delete
в транзакции также).
Я думал о регистрации моего специализированного ContentProvider
как слушатель при помощи registerContentObserver
но с тех пор ContentResolver#acquireProvider
методы скрыты, как я получаю правильную ссылку?
Я не повезло?
Хорошо, чтобы это не было бесцельно: единственный способ, который я могу придумать, - это кодировать startTransaction и endTransaction как запросы на основе URL. Что-то вроде ContentResolver.query (START_TRANSACTION, null, null, null, null)
. Затем в ContentProvider # запрос
на основе зарегистрированного URL-адреса вызова начала или завершения транзакции