美文网首页
2018-03-07 Dagger2 解耦 简单使用

2018-03-07 Dagger2 解耦 简单使用

作者: 啤酒小龙虾 | 来源:发表于2018-03-07 21:02 被阅读0次

解耦方式

1、利用配置文件,使用反射获取到需要加载的对象。

2、设计模式:单例、工厂、观察者....等

什么是Dagger2?

        Dagger2是为安卓和Java平台提供的在编译时进行依赖注入的框架。

 注意:  Dagger2 不是使用反射的方式进行的,因为反射是在运行时进行的!而Dagger2 是在编译期进行的!

使用Dagger2做什么工作?

        主要用于做界面和业务之间的隔离。

操作步骤:

1、指定需要注入的目标

注意添加注解

通过注解去找实例。

需要注意的是使用@Inject注解的变量不能是private变量,否则会报以下错误:

Error:(16, 27) 错误: Dagger does not support injection into private fields

2、创建与类相关的module

主要用于对象创建的代码放在里面。注意创建类的时候添加注解@Module 表示创建对象的方法在这里面(指定类)    因为创建对象的语句不能直接放在类里面,所以需要添加一个方法。用@Provides注解表示创建对象的代码在这个方法里面(指定方法)

3、将Avtivity与Module建立起练习

以接口的方式将两者关联   注意注解@Component

4、记得 ReBuild一下  : 在工具在编译期自动生成代码

5、使用

注意:此代码在那个类使用写到那个类中

工作原理:

每个注解都用来做什么工作: 如下图所示

各个注解表示的含义

Dagger2的引入:

配置apt插件(在build.gradle(Project:xxx)中添加如下代码):

dependencies {

        classpath 'com.android.tools.build:gradle:2.1.0' //添加apt插件

        classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'

}  

添加依赖(在build.gradle(Module:app)中添加如下代码)

apply plugin:'com.android.application'

//添加如下代码,应用apt插件

apply plugin:'com.neenbedankt.android-apt'

...

dependencies {

 ...

 compile'com.google.dagger:dagger:2.4'

apt'com.google.dagger:dagger-compiler:2.4'

//java注解

compile'org.glassfish:javax.annotation:10.0-b28'

...}

相关文章

  • 2018-03-07 Dagger2 解耦 简单使用

    解耦方式 1、利用配置文件,使用反射获取到需要加载的对象。 2、设计模式:单例、工厂、观察者....等 什么是Da...

  • Dagger2 独家解读

    1、Dagger2是干嘛的? Dagger2是用于依赖解耦的 2、要了解Dagger2他是怎么解耦的? 他是靠注解...

  • 模块解耦神器-Dagger2的使用和详解

    1 Dagger2简介 Dagger2提供给Java和Android使用,主要用于模块间解耦、提高代码的健壮性和可...

  • Dagger2的实际使用

    前言 Dagger2是依赖注入的框架,网上有很多关于dagger的使用方法。好处想必大家都能知道就是解耦。 那解谁...

  • dagger2和hilt的使用

    一、dagger2的使用 1、dagger是什么? dagger对对象之间的解耦,降低对象间的耦合度。 2、dag...

  • 依赖注入之Dagger2初探

    Dagger2 Dagger2是Google提供的依赖注入框架,依赖注入为Android中组件之间的解耦提供了很好...

  • Dagger2 简单实例

    最近通宵,一些技术的简单标记。 Dagger2看了很多文章,对于刚开始看的人真是头疼,我们不是要解耦吗,感觉搞得很...

  • 010:参数注入模块

    开始 该模块存在的意义:解耦用法很简单 使用 得到结果

  • Dagger2

    Dagger2:实现依赖注入,解耦 Dagger2起源于Dagger,是一款基于Java注解来实现的完全在编译阶段...

  • Dagger2 学习与理解

    Dagger2 使用编译时注解 + APT 实现依赖注入,能带来什么好处呢?一个词:解耦。在项目越来越庞大的时候,...

网友评论

      本文标题:2018-03-07 Dagger2 解耦 简单使用

      本文链接:https://www.haomeiwen.com/subject/gyesfftx.html