我正在使用 ObjectBox 数据库构建一个 Flutter 应用程序。
应用调用openStore(); 在启动时,并将 Store 实例保存在单例类中,以便我可以从任何地方访问它。
但我不确定何时调用store.close();
在 iOS 中,我们可以使用applicationWillTerminate(_:)在应用程序终止之前执行代码
不幸的是,Flutter 并没有为我们提供这样的东西。
我在预期寿命最长的 StatefulWidget 中尝试了下面的代码,但它有时会更快地处理,并且应用程序无法访问数据库。
@override
void dispose() {
StoreHelper().store?.close();
super.dispose();
}
我的问题是...
- 调用store.close()的最佳做法是什么?
- 如果我不关闭商店会怎样?我的应用程序会失去数据持久性吗?