android数据库已经关闭onResume

| 我的应用程序有一个问题,如果我返回到某个活动,会收到一个错误消息,指出数据库已关闭:
ERROR/AndroidRuntime(3566): Caused by: java.lang.IllegalStateException: database /data/data/com.kempville.app/databases/MyDB already closed
我实例化,打开,实例化游标,执行查询,关闭游标并关闭数据库,所有这些都在onResume()期间调用的方法内进行。我不知道当此活动回到最前面时,只要调用onResume就会假定打开什么。
private void getMydata() {
    MyDb db;
    db = new MyDB(this);
db.open();
Cursor c = db.getInfo(code);
startManagingCursor(c);
if (c.moveToFirst()) {
        name = c.getString(c.getColumnIndex(\"name\"));
}
c = fdb.getType(myArray.getString(\"type\"));
startManagingCursor(c);
if (c.moveToFirst()) {
    type = c.getString(c.getColumnIndex(\"type\"));
}
c.close();
db.close();
    
已邀请:
似乎startManagingCursor会尝试关闭它,尽管您已经自己关闭了它。要么放弃startManagingCursor(不推荐使用),要么更好地调用stopManagingCursor     

要回复问题请先登录注册