Закрытие DBHelper в классе приложения - PullRequest
0 голосов
/ 05 сентября 2018

Применительно к Android: документация по использованию базы данных SQLite , мы должны закрыть ссылку на DBHelper в onDestroy действия:

@Override
protected void onDestroy() {
    mDbHelper.close();
    super.onDestroy();
}

Но я хочу использовать объект DBHelper в классе Application:

public class UnifiedApplication extends Application {

    // Database helper
    public UnifiedAppDBHelper mDbHelper;

    @Override
    public void onCreate() {
        mDbHelper = new UnifiedAppDBHelper(this);
        super.onCreate();
    }
}

Я думал о добавлении mDbHelper.close() в onTerminate() класса Application, но, как упоминалось в Документация , onTerminate() никогда не будет вызываться на производственном устройстве. Где я должен закрыть объект mDbHelper?

1 Ответ

0 голосов
/ 05 сентября 2018

Вам не нужно закрывать свой mDbHelper объект. Ваша сессия базы данных будет жить до тех пор, пока Application объект живет, и это нормально.

Здесь вы можете найти больше об этом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...