Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/212.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 检查光标对象是否已关闭_Android_Cursor_Android Sqlite - Fatal编程技术网

Android 检查光标对象是否已关闭

Android 检查光标对象是否已关闭,android,cursor,android-sqlite,Android,Cursor,Android Sqlite,我是android新手。是否有任何语句可用于检查游标对象和数据库是否关闭。 我有两个活动A和B。当我在A中执行某些操作时,它将转到B。A的数据库对象和光标对象在活动A中关闭。当我在B中按下后退按钮时,活动被强制关闭。我知道此错误是由于关闭我的游标对象造成的。是否有方法重新打开游标和数据库对象,或者我们是否可以检查两者是否都已关闭。如果是,请帮助我 我的logcat视图如下所示: 10-25 16:02:15.152: ERROR/AndroidRuntime(458): Caused by:ja

我是android新手。是否有任何语句可用于检查游标对象和数据库是否关闭。 我有两个活动A和B。当我在A中执行某些操作时,它将转到B。A的数据库对象和光标对象在活动A中关闭。当我在B中按下后退按钮时,活动被强制关闭。我知道此错误是由于关闭我的游标对象造成的。是否有方法重新打开游标和数据库对象,或者我们是否可以检查两者是否都已关闭。如果是,请帮助我

我的logcat视图如下所示:

10-25 16:02:15.152: ERROR/AndroidRuntime(458): Caused by:java.lang.IllegalStateException: attempt to re-open an already-closed object: android.database.sqlite.SQLiteQuery (mSql = SELECT * FROM tbl_sec) 
10-25 16:02:15.152: ERROR/AndroidRuntime(458):     at android.database.sqlite.SQLiteClosable.acquireReference(SQLiteClosable.java:34)
10-25 16:02:15.152: ERROR/AndroidRuntime(458):     at android.database.sqlite.SQLiteQuery.fillWindow(SQLiteQuery.java:64)
10-25 16:02:15.152: ERROR/AndroidRuntime(458):     at android.database.sqlite.SQLiteCursor.fillWindow(SQLiteCursor.java:283)
10-25 16:02:15.152: ERROR/AndroidRuntime(458):     at android.database.sqlite.SQLiteCursor.onMove(SQLiteCursor.java:255)
10-25 16:02:15.152: ERROR/AndroidRuntime(458):     at android.database.AbstractCursor.moveToPosition(AbstractCursor.java:188)
10-25 16:02:15.152: ERROR/AndroidRuntime(458):     at android.database.AbstractCursor.moveToFirst(AbstractCursor.java:248)
10-25 16:02:15.152: ERROR/AndroidRuntime(458):     at com.nagainfo.firstAp.showTime.onResume(showTime.java:84)
10-25 16:02:15.152: ERROR/AndroidRuntime(458):     at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1149)
10-25 16:02:15.152: ERROR/AndroidRuntime(458):     at android.app.Activity.performResume(Activity.java:3823)
10-25 16:02:15.152: ERROR/AndroidRuntime(458):     at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3118)

尝试在活动A的
onResume()
onStart()
中打开
光标,而不是
onCreate()

要关闭数据库实例,请在退出活动之前执行以下操作:

if(db.isOpen()){
    db.close();
}
要检查光标是否可用,请执行以下操作:

if (cursor1.isClosed())
    //Do something here