【发布时间】:2020-01-04 21:23:18
【问题描述】:
我正在 Android Studio 中创建一个 Android 应用程序,我正在使用 Java 进行编码。
我的应用将有一个类来处理与 SQLite 数据库的连接,它还将有一个抽象化数据库访问的类,即朋友列表以及按朋友排序的发送和接收消息列表。
我目前有三个活动,主要活动,一个用于列出所有朋友的列表,一个用于显示特定的聊天对话。
我的问题是在我的活动之间共享一个类的实例的最佳实践是什么,即数据库类和其他类(比如朋友管理器)。我不想为每个活动复制这些类,而是在我的应用程序的整个生命周期中保留一个实例。
一个例子是“FriendManager”类,它具有提供朋友列表、删除和添加新朋友等的接口。我想在创建所有朋友列表时使用它,也想在创建所有朋友列表时使用它显示一个对话,因为它将包含对“MessageManager”类的引用,该类负责从数据库(和远程位置)加载消息。
【问题讨论】:
-
您的管理器类似乎符合 Google 的架构模式所称的“存储库”。设置这些的典型解决方案是使用依赖反转框架。对于 Java,默认的依赖倒置选择往往是 Dagger 2,尽管这带来了显着的学习曲线。
-
我会把它们扔进
Service,然后绑定到每个Activity中的Service。
标签: java android class android-activity