Dagger2用法之MVP项目解耦实践
来源:互联网 发布:linux proguard 编辑:程序博客网 时间:2024/06/03 17:09
1.什么是Dagger2?
dagger是为android和java平台提供的基于编译时进行依赖注入的框架,编译时,生成代码(rebuild),完成所需对象的注入。
2.为什么使用Dagger2?
dagger2解决了基于反射带来的开发和性能上的问题。
3.项目中的作用?
主要用于做界面和业务之间的隔离,达到解耦的目的。
快速接入步骤(开发环境gradle2.3.3)
1.在APP的build.gradle里添加依赖:
compile 'com.google.dagger:dagger:2.11-rc2' annotationProcessor 'com.google.dagger:dagger-compiler:2.11-rc2'
注:gradle低于2.2.3版本的还需要添加apt依赖。
dagger2实践操作
使用起来,还是比较简单的,理解3个概念,然后按照套路来就行了。
传统开发过程,开发个登录界面大概的代码如下:
1.MainActivity中的代码
这里需要初始化LoginPresenter,然后调用登录方法:
LoginPresenter presenter = new LoginPresenter(this);presenter.login("username","pwd");
2.Login登录类中的方法,其实在MVP中这个类叫LoginPresenter,整合了登录的业务逻辑。
这里写具体的登录方法的逻辑:
public void login(String username,String pwd){ Toast.makeText(mainActivity, "正在登录", Toast.LENGTH_SHORT).show();}
3.业务Bean,这里省略不写了。只关注上面两个。
显然,MainActivity持有了LoginPresenter的引用。而我们的目的是,登录类的改变,不会影响到使用者的代码结构,那么需求来了,如何解耦呢。
这里就引入了dagger2.
阅读全文
0 0
- Dagger2用法之MVP项目解耦实践
- 【Android - 框架】之Dagger2+MVP的用法
- MVP+Dagger2解耦开发
- mvp+dagger2+retrofit2+rxjava 项目框架 最佳实践
- mvp+dagger2+retrofit2+rxjava 项目框架 最佳实践
- android MVP + dagger2 + Retrofit + Rxjava+okhttp android基础项目框架搭建(1)--之Dagger2引入
- android MVP + dagger2 + Retrofit + Rxjava+okhttp android基础项目框架搭建(2)--之MVP引入
- Dagger2+MVP
- Dagger2+mvp
- Android之---MVP设计模式(项目中的实践)
- RxJava+Retrofit+OkHttp3+Dagger2+MVP构建Android项目简单例子
- Android注解使用之Dagger2实现项目依赖关系解耦
- Android注解使用之Dagger2实现项目依赖关系解耦
- Android注解使用之Dagger2实现项目依赖关系解耦
- android开发之Dagger2解耦见解
- android之dagger2+rxjava+retrofit2+mvp架构的结合
- Rx系列学习之旅(二)--MVP+Dagger2
- 【BaseFragment】基于MVP+Dagger2+Retrofit+Rxjava框架之BaseFragment
- 非技术背景产品经理之3大生存指南
- Linux上Mysql安装配置(安装时遇到问题后面有解决方法),改变默认路径
- 最长无重复字符子串
- OidGenerator
- 为应用程序池“XXX”提供服务的进程在与 Windows Process Activation Service 通信时出现严重错误。该进程 ID 为“XXXX”。数据字段包含错误号。
- Dagger2用法之MVP项目解耦实践
- 理解java的三大特性之多态
- TortoiseGit & eclipse git 操作基础
- Oracle学习笔记:几个使用到的函数与统计语句
- js中数组反向、排序reverse、sort
- 算法:题目:输出9*9口诀
- 这个Excel函数,推荐所有人学习!HR都说必须会
- 产品经理的工作
- 下拉刷新,上拉加载