В моем приложении возникает проблема, из-за которой, если я возвращаюсь к действию, я получаю сообщение об ошибке, что база данных была закрыта:
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();