IllegalStateException尝试重新打开已关闭的对象

时间:2017-12-13 10:37:50

标签: android sqlite cursor

我有一个TimerTask每隔5秒运行一次检查方法

TimerTask checkEnc = new mainTask();
timer.scheduleAtFixedRate(checkEnc 0, 5000);

该方法检查添加到数据库中的新数据。

  public static ArrayList<Media> getNew(Context context) {

    ArrayList<Media> medias = new ArrayList<Media>();

    Cursor cursor = getNewAsCursor(context);

    if (cursor.moveToFirst()) {

        while (!cursor.isAfterLast()) {
            medias.add(new Media(context, cursor));
            cursor.moveToNext();
        }
    }


    if(cursor != null && !cursor.isClosed()){
        cursor.close();
    }

    return medias;

}

问题是,大多数时候尝试重新打开已经崩溃的问题 - closed object: net.sqlcipher.database.SQLiteQuery

cursor.moveToNext();

导致这种情况的原因是什么?

0 个答案:

没有答案