5

在 ORMLite 文档中,建议为每个活动创建OrmLiteSqliteOpenHelper。由于获取助手只需要一个Context对象,为什么不为整个Application对象创建一次数据库助手呢?这将打开使用 Dagger(或其他注入框架)将数据库助手注入到需要它的类中的可能性。

有什么理由不创建一个单一的应用程序范围的数据库助手?是否最好让每个活动都有自己的数据库助手?我可以想象这会使助手的缓存大小保持较小,因为缓存仅包含与其活动相关的对象。

4

1 回答 1

4

在 ORMLite 文档中,建议为每个活动创建 OrmLiteSqliteOpenHelper。

这并不意味着您需要为每个活动创建一个单独的帮助程序实例。您当然可以/应该在整个应用程序中共享帮助程序。

引用文档:

我们建议使用 OpenHelperManager 来监控助手的使用情况——它会在第一次访问时创建它,跟踪每次代码的一部分使用它,然后在最后一次释放助手时关闭它。

OpenHelperManager创建和管理助手单

如果你指出我在文档中指出你需要一个不同的活动,我会调整它们?

于 2013-12-18T14:47:11.160 回答