基于NoHttp+RxBus+MVP实现网络文件下载(带进度条)

前面有一篇文章写的是NoHttp+RxBus实现网络文件的下载,此篇文章是对上一篇文章的升级版本,使用到了MVP模式。上一篇地址:点击打开链接

传统的Android开发使用的是的MVC模式,个人觉得之前用MVC开发都是全写一个类-Activity里面,业务复杂的情况下看着头疼。™ Activity到底算V还是C,还是两者都是?傻傻分不清楚。

使用MVP的话,view由Activity承担,Presenter做业务,结构清晰。缺点就是每一个Activity或者Fragment都增加一个Presenter,代码量会增加。下面就来说说会增加哪些代码:

1.View:

View的话主要是用来跟新UI。

 public interface View {
        void upDataUI(DownLoadBean bean);
    }


2.Persenter:

Persenter的话是用来处理逻辑业务的。

 //  逻辑处理
    public interface Persenter {

        boolean checkSelfPermission(Context context);

        void initRxBus();

        void startDownLoad();

    }

3.为了逻辑更加紧凑,将View和Persenter写在一个Contract里面:

public class DownLoaderContract {

    //跟新UI
    public interface View {
        void upDataUI(DownLoadBean bean);
    }

    //  逻辑处理
    public interface Persenter {

        boolean checkSelfPermission(Context context);

        void initRxBus();

        void startDownLoad();

    }
}

4.具体怎么使用,我们会让Activity去实现我们的View接口,然后在写一个类去实现我们的Persenter去处理业务逻辑。具体的欢迎下载源码来看看。
NoHttp+RxBus+MVP源码地址

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值