У меня есть приложение с двумя частями.
- Служба, которая создает контент.
- Приложение, использующее контент
Каждый из них работает как разные процессы. Проблема в том, что обе они совместно используют базу данных. И я часто получаю ошибку с блокировкой базы данных, как когда служба пытается что-то написать, так и пользовательский интерфейс считывает данные. И наоборот. Как это сделать?
- Класс, используемый для доступа к БД, представляет собой одноэлементный класс. Но поскольку оба пользовательских интерфейса и службы являются двумя разными процессами, я полагаю, что есть два синглета. Так что это не помогает.
- Даже
synchronise
не поможет, я полагаю, потому что снова из-за двух разных процессов. -
Content Providers
может быть вариант, но поскольку я использую сложные запросы для копания информации, было бы очень сложно использовать это.
Как получить два процесса, совместно использующих базу данных. Любые реплики были бы оценены.