Открыто несколько баз данных Android

Я делаю клиент обмена мгновенными сообщениями для Android и работаю с базами данных для хранения контактов и другой информации ... В моем приложении у меня есть действие и одна служба. Мне нужно открыть три базы данных одновременно как по сервису, так и по активности.

Я использую три базы данных, потому что хочу, чтобы базами данных было легче управлять без проблем с синхронизацией записи в них. (насколько я знаю, мне нужно синхронно записывать в базу данных, потому что она может сломаться).

Чтобы управлять базами данных из службы и из активности одновременно, я подумал, что синглтон или статический класс DatabaseHelper могут мне помочь ...

Итак, я начал проводить тест, выполнив два databasehelper глобальных объектов в действии, каждый из них открывает свою базу данных, после запуска проекта я заметил, что последняя открытая база данных остается открытой в обоих объектах: ((, почему это происходит?

Может ли кто-нибудь подсказать мне, как можно у меня эта работа работает? Спасибо!

LE: после дополнительных тестов я создал статический объект databasehelper, открыл службу, из которой я беру объект базы данных из активности, и в то же время я сделал два для операторов, один в действии и один в обслуживании, которые работают от 0 до 3000 и добавляют некоторые значения в ту же базу данных, а затем считывают базу данных.

После этого прогона я заметил, что база данных все еще находится в футах и ​​работает без ошибок. Странно то, что служба для запускается только после того, как действие для завершает работу. Почему? Спасибо!

13
задан Cata 21 December 2010 в 13:23
поделиться