我在My Android应用程序中使用MVP模式。我的要求是
1。用户点击“同步”按钮时同步捕获的数据
2。即使应用程序未运行,也会在午夜调用后台服务并与服务器同步数据的作业调度程序。
两种情况的流程均为:
1)当用户点击“同步”按钮
时,同步捕获的数据getPresenter()。notifySyncBtnPressed()将被调用
notifySyncBtnPressed()将通过调用mModel.sync()来指示模型
注意:此流程对我来说很明确 - 如果需要,建议改进
2)将调用后台服务的作业调度程序(请在此处提供说明)
请建议,
1。它是从Service类调用Model(Repository)实例的正确方法吗?
2。我也在Model层和Repositiry层之间混淆,MVP中的Model层和Repository层有什么不同。
答案 0 :(得分:1)
现在我明白为什么你想要服务的主持人,如果是这样的话,我认为你应该专门为服务创建一个Presenter。它非常棒,但它会有意义。
无论如何,这些步骤似乎很好,主持人应该与"模型" (MVP中的M)并且它通常由交互者组成。如果您想使用存储库模式,那么这将发生在交互者之后,并且将成为模型层的一部分。
我会将您的IModel重命名为IInteractor,并且每个需要数据的组件都将与该类进行交互。然后由交互器访问存储库,并且表示层不可见。