0

我在发布 API 11 的手机上运行我的应用程序很好

但是,当我在模拟器(版本 2.2 或 API 8)上运行时,我的 sql lite 调用出现以下异常

Finalizing a Cursor that has not been deactivated or closed or database not closed error

知道为什么或如何解决这个问题吗?

谢谢

4

1 回答 1

0

完成光标后,您需要调用Cursor.close(). 让它不关闭会导致内存泄漏。例如:

Cursor cursor = null;
try {
    cursor = getContentResolver().query(myUri, MY_PROJECTION, null, null, null);
    if (cursor != null && cursor.moveToFirst()) {
        // moar code
    }
} finally {
    if (cursor != null) {
        cursor.close();
    }
}
于 2013-07-09T01:20:02.583 回答