对于 Android 架构组件和 MVVM 模式,我有一些疑问。
基于网络上的大多数示例,通常有简单的示例。
- 有一个房间的实体
@Entity
public class User{
...
}
- 有一个 DAO
@Dao
public interface UserDao{
...
}
- 有一个存储库
public class UserRepository{
}
- 视图模型
public class UsersListViewModel extends AndroidViewModel{
....
}
现在让我们扩展它,并在旁边user
有user_access
,user_actions
例如,有 3 个表。
问题:
对于 Room 中的每张桌子,我都会创建实体。我应该
Dao
为每个实体(userDao、userAccessDao、userActionsDao)设置 3 个还是只是一个普通AppDao
类?存储库也是如此。整个应用程序的一个存储库或每个实体的存储库(RepositoryUser、RepositoryUserAccess、RepositoryUserActions?
如果我的应用有一个主要活动和多个片段,我应该为每个片段创建一个 ViewModel 吗?