繁体   English   中英

带有RxAndroid + Retrofit的Android MVP

[英]Android MVP with RxAndroid + Retrofit

最近我开始阅读很多关于MVP的内容,我想用它练习我的项目。

但是我无法正确理解Rx + Retrofit代码应该去哪里? 我认为应该通过Interactors在Model Layer中,但仍然可以有人对此有所了解吗?

RX回调会发生什么? onNext(),onCompleted()和onFailure()将数据传递回Presenter,还是我们实现了侦听器,然后将其传递给Presenter?

当我在onNext()中获取数据时,我还想保留数据(Realm / StorIO),所以再次将它传递给另一个DataLayer或者它应该去哪里?

我们还应该进一步解耦Rx回调吗?

我关注这篇文章https://davidguerrerodiaz.wordpress.com/2015/10/13/a-brief-introduction-to-a-cleaner-android-architecture-the-mvp-pattern/

这个来自antonioleiva.com的单独github回购https://github.com/antoniolg/androidmvp

正如您所指出的,RxJava功能定义了模型层的用例,因此它将被放置在该层的交互器中。 您可以为每个用例创建不同的交互器。 假设您从服务器中提取用户列表,这将是一个用例和一个具有RxJava / Retrofit Observable的交互器。

然后你会有一个带有Observer的Presenter,它对这个用户列表很感兴趣,所以它会被订阅到Observable。

最后,当Observer in拥有来自Observable(onCompleted)的所有数据时,它将转换这些数据(如果需要的话)并传递给View,它将负责显示它。

有很棒的帖子解释mvp。 Rx只是它的附加工具。

http://hannesdorfmann.com/android/mosby-playbook/

有深度解释和源代码示例。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM