尚未停用或关闭的游标。我收到错误?

时间:2011-01-04 07:22:44

标签: android

我没有在应用程序中关闭任何强制但是这个错误在logcat中显示请建议我如何解决这个错误?

我正在使用此

line no 210::public Cursor getreLaunchView() 
      {
     Cursor cursor = db.query(reLaunchView.TABLE,new String[] { reLaunchView.Launch_ID,          reLaunchView.Launch_CENTERLATITUDE,
           reLaunchView.Launch_CENTERLONGITUDE,reLaunchView.Launch_LATDELTA,reLaunchView.Launch_LONGDELTA,
           reLaunchView.Launch_ZOOMLEVEL},null, null, null, null, null);
   if (cursor != null) 
   {
     cursor.moveToFirst();
    }
     return cursor;
 }

01-04 12:26:29.482: ERROR/Cursor(3479): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/com.bluepal.android.parkable/databases/parkable.db, table = reLaunchView, query = SELECT _id, centerLatitude, centerLongitude, latDelta, longDelta, zoomLevel FROM reLaunchView
01-04 12:26:29.482: ERROR/Cursor(3479): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
01-04 12:26:29.482: ERROR/Cursor(3479):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
01-04 12:26:29.482: ERROR/Cursor(3479):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
01-04 12:26:29.482: ERROR/Cursor(3479):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
01-04 12:26:29.482: ERROR/Cursor(3479):     at android.database.sqlite.SQLiteDatabase.queryWithFactory(SQLiteDatabase.java:1229)
01-04 12:26:29.482: ERROR/Cursor(3479):     at android.database.sqlite.SQLiteDatabase.query(SQLiteDatabase.java:1184)
01-04 12:26:29.482: ERROR/Cursor(3479):     at android.database.sqlite.SQLiteDatabase.query(SQLiteDatabase.java:1264)
01-04 12:26:29.482: ERROR/Cursor(3479):     at **com.bluepal.android.parkable.parkdatabase.getreLaunchView(parkdatabase.java:210)**
01-04 12:26:29.482: ERROR/Cursor(3479):     at com.bluepal.android.parkable.Prakablescreen.databasefunction(Prakablescreen.java:663)
01-04 12:26:29.482: ERROR/Cursor(3479):     at com.bluepal.android.parkable.Prakablescreen.displayMap(Prakablescreen.java:563)
01-04 12:26:29.482: ERROR/Cursor(3479):     at com.bluepal.android.parkable.Prakablescreen$1.handleMessage(Prakablescreen.java:531)
01-04 12:26:29.482: ERROR/Cursor(3479):     at android.os.Handler.dispatchMessage(Handler.java:99)
01-04 12:26:29.482: ERROR/Cursor(3479):     at android.os.Looper.loop(Looper.java:123)
01-04 12:26:29.482: ERROR/Cursor(3479):     at android.app.ActivityThread.main(ActivityThread.java:4627)
01-04 12:26:29.482: ERROR/Cursor(3479):     at java.lang.reflect.Method.invokeNative(Native Method)
01-04 12:26:29.482: ERROR/Cursor(3479):     at java.lang.reflect.Method.invoke(Method.java:521)
01-04 12:26:29.482: ERROR/Cursor(3479):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
01-04 12:26:29.482: ERROR/Cursor(3479):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
01-04 12:26:29.482: ERROR/Cursor(3479):     at dalvik.system.NativeStart.main(Native Method)

1 个答案:

答案 0 :(得分:0)

该错误表示从getreLaunchView返回的游标正在最终确定(很可能是因为它超出了范围)但尚未关闭。完成后调用光标上的close()。