参考Android: Documentation for using SQLite database,我们应该在活动的onDestroy中关闭对DBHelper的引用:
@Override
protected void onDestroy() {
mDbHelper.close();
super.onDestroy();
}
但我想在Application类中使用DBHelper对象:
public class UnifiedApplication extends Application {
// Database helper
public UnifiedAppDBHelper mDbHelper;
@Override
public void onCreate() {
mDbHelper = new UnifiedAppDBHelper(this);
super.onCreate();
}
}
我想在应用类的mDbHelper.close()
中添加onTerminate()
,但正如在Documentation中所提到的,onTerminate()
永远不会在生产设备上被调用。我应该在哪里关闭mDbHelper对象?
您不必关闭mDbHelper
对象。只要Application
对象存在,您的数据库会话就会存在,这很好。
Here你可以找到更多关于它的信息。