android - 在 Application 类中关闭 DBHelper
问题描述
参考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();
}
}
我曾考虑在 Application 类中添加mDbHelper.close()
,onTerminate()
但如文档中所述,onTerminate()
永远不会在生产设备上调用。我应该在哪里关闭 mDbHelper 对象?
解决方案
您不必关闭mDbHelper
对象。只要Application
对象存在,您的数据库会话就会存在,这很好。
在这里你可以找到更多关于它的信息。
推荐阅读
- php - 如何在小数点下显示单位(Woocommerce 价格)?
- node.js - Firebase:自定义令牌格式不正确。请检查文档
- javascript - 自定义 React 样板
- python - 如何实现具有可调用值的只读属性?
- java - 如何使用 tbroyer 插件从头开始创建 gwt-lib?
- python - 确保从int切换到float(python)的向后兼容性-fastapi,联合类型
- makefile - Makefile + Pylint + Find files - 目标“lint”的配方失败
- zfs - lvm分区在被删除后仍然存在?
- google-apps-script - 在 Google Apps 脚本中使用 RangeList
- ios - 如何解决 Transporter 错误“捆绑中包含的配置文件无效。[缺少代码签名证书]”?