1

活动暂停时关闭数据库是最佳做法吗?或者不管活动的状态如何,让数据库保持打开状态是否安全?

很想知道,因为如果我在 onPause() 中关闭我的数据库,然后尝试在 onResume() 中重新打开它,它会抛出一个空指针异常并说试图从一个已经关闭的游标中重新查询数据库。. .

4

3 回答 3

3

关闭它onDestroy()是恕我直言最好的方法。

于 2012-03-06T15:49:32.490 回答
0

我从不关闭我的数据库,而是在onCreate我的自定义Application类实现中打开它。

有一种onTerminate方法,但文档说它永远不会被执行,因此没有真正的方法可以确定应用程序何时终止。

我从来没有遇到过这种never close database模式的任何问题。

于 2012-03-06T15:54:26.680 回答
0

你可以发布错误吗?我通常在 onPause 方法中关闭数据库并在 onResume 中打开它。因为我读过 onDestroy 并不总是被调用。但在你的情况下,我认为问题在于未关闭的光标。但我不确定这就是我要求您发布 logcat 和您的代码的原因。

于 2012-03-06T15:58:26.177 回答