Закрытие базы данных в onPause () - PullRequest
1 голос
/ 06 марта 2012

Лучше ли закрывать базу данных, когда действие приостановлено? Или безопасно оставить базу данных открытой независимо от состояния активности?

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

Ответы [ 3 ]

3 голосов
/ 06 марта 2012

Закрытие в onDestroy() - лучший способ для них.

0 голосов
/ 06 марта 2012

Можете ли вы опубликовать ошибку? Я обычно закрываю базу данных в методе onPause и открываю ее в onResume. Потому что я читал, что onDestroy не всегда называется. Но в вашем случае проблема, я думаю, в курсоре, который не закрыт. Но я не уверен, поэтому я прошу вас опубликовать logcat и ваш код.

0 голосов
/ 06 марта 2012

Я никогда не закрываю свою базу данных и открываю ее в onCreate моей пользовательской реализации Application класса.

Существует метод onTerminate, но в документации сказано, что он никогда не будет выполнен, поэтому нет реального способа узнать, когда приложение будет остановлено.

У меня никогда не возникало проблем с шаблоном never close database.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...