我目前正在大量修改/重写
Android应用程序,并且看到偶尔会出现以下错误:CursorAdapter方法被调用,它调用AbstractwindowedCursor#checkPosition(),并且:
02-20 15:03:18.180 E/AndroidRuntime(17143): android.database.StaleDataException: Attempting to access a closed CursorWindow.Most probable cause: cursor is deactivated prior to calling this method. 02-20 15:03:18.180 E/AndroidRuntime(17143): at android.database.AbstractwindowedCursor.checkPosition(AbstractwindowedCursor.java:139) 02-20 15:03:18.180 E/AndroidRuntime(17143): at android.database.AbstractwindowedCursor.getLong(AbstractwindowedCursor.java:74) 02-20 15:03:18.180 E/AndroidRuntime(17143): at android.database.CursorWrapper.getLong(CursorWrapper.java:106) 02-20 15:03:18.180 E/AndroidRuntime(17143): at android.widget.CursorAdapter.getItemId(CursorAdapter.java:220)
麻烦的是,我们没有关闭任何游标.我们所有的游标来自CursorLoaders,而后者则由ContentProvider生成.我们将CursorAdapter从LoaderCallbacks传递到每个相应的CursorAdapter中,我们在ContentProvider中注册Cursor for Notification,我们从每个插入(…),delete(…)和update(…)中通知ContentResolver …)简而言之,我在使用中找不到任何光标关闭的原因.
那么,StaleDataException的其他原因是什么?
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。