Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
在 ORMLite 文档中,建议为每个活动创建OrmLiteSqliteOpenHelper。由于获取助手只需要一个Context对象,为什么不为整个Application对象创建一次数据库助手呢?这将打开使用 Dagger(或其他注入框架)将数据库助手注入到需要它的类中的可能性。
OrmLiteSqliteOpenHelper
Context
Application
有什么理由不创建一个单一的应用程序范围的数据库助手?是否最好让每个活动都有自己的数据库助手?我可以想象这会使助手的缓存大小保持较小,因为缓存仅包含与其活动相关的对象。
在 ORMLite 文档中,建议为每个活动创建 OrmLiteSqliteOpenHelper。
这并不意味着您需要为每个活动创建一个单独的帮助程序实例。您当然可以/应该在整个应用程序中共享帮助程序。
引用文档:
我们建议使用 OpenHelperManager 来监控助手的使用情况——它会在第一次访问时创建它,跟踪每次代码的一部分使用它,然后在最后一次释放助手时关闭它。
OpenHelperManager创建和管理助手单例。
OpenHelperManager
如果你指出我在文档中指出你需要一个不同的活动,我会调整它们?