Привет еще раз. У меня небольшая проблема при фотографировании. У меня есть кнопка, которая вызывает камеру, успешно делает фотографию и возвращается к моей форме ввода. Моя единственная проблема - утечка базы данных, которая возникает при нажатии кнопки для вызова камеры. Мой код выглядит примерно так.
public void takephoto(){
Intent in = new
Intent(this, takephoto.class);
startActivityForResult(in,1);
}
Вот фрагмент того, как открывается база данных:
public journalDbAdapter open() throws SQLException {
mDbHelper = new DatabaseHelper(mCtx);
mDb = mDbHelper.getWritableDatabase();
return this;
}
public void close() {
mDbHelper.close();
}
Я бегу:
mDbHelper = new journalDbAdapter(this);
mDbHelper.open();
В onCreate действия или класса, в который я вызываю камеру. Я не кодировал mDbHelper.close (); нигде не уверен, если я должен когда или где. Я думаю, что я бы предпочел просто оставить его открытым, снимая одно изображение.
Logcat:
08-17 21:33:37.582: ERROR/Database(18297): java.lang.IllegalStateException: /data/data/com.growjournal.beta/databases/grower SQLiteDatabase created and never closed
08-17 21:33:37.582: ERROR/Database(18297): at android.database.sqlite.SQLiteDatabase.(SQLiteDatabase.java:1785)
С какими возможными проблемами я мог бы столкнуться, если бы это никогда не было исправлено ??
Кажется, все работает нормально, но я бы хотел избежать любых проблем со многими устройствами на Android.