Android服务应该在MVP模式中扮演什么角色?

前端之家收集整理的这篇文章主要介绍了Android服务应该在MVP模式中扮演什么角色?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在开发一个人类活动识别的 Android应用程序.

它基本上是这样的 – 服务不断地读取加速器数据并将识别的活动(即,行走,运行)存储在数据库中.用户可以在活动中查看ListView中的所有已识别活动(访问数据库).数据库中的每个User表都有一个pa_goal(物理活动目标)字段,服务从数据库中读取该字段并进行一些检查.

当然,用户可以从活动中更改此目标.因为我将实现MVP架构模式.

我不确定该把服务放在哪里?肯定不是View.任何建议?

解决方法

在一个干净的架构中,我假设你正在使用MVP,有一个将框架与业务逻辑分离的想法.这基本上是普通演示者允许您做的事情.

在这种情况下,它不是你正在处理的观点,但原则是相似的.当您可以将它们分离出来以获得更好,更单一的责任类时,您不希望将所有业务或应用程序逻辑混合在Android代码中.所以我会说,虽然它不是一个视图,但你仍然应该有一个presenter类型类(可能更好的称为控制器或管理器).

此类将是一个POJO,它控制您的服务行为,使用标准的junit测试和服务模拟可以轻松测试.然后可以将此类和服务放入其自己的功能包中,并以与演示者相同的方式与后端模型进行交互.

因此,总而言之,该角色是您的应用的另一个功能,即网站与其他功能(通常只是我的经验中的视图).

希望有所帮助

猜你在找的Android相关文章