前言
本文章尝试从零开始导入Dagger2的角度讲述使用Dagger2的导入和使用。将使用AndroidStudio新建Android项目导入Dagger2并运行起来。
配置
首先新建AndroidStudio项目,并在项目app模块下的build.gradle文件的dependencies项内添加以下代码:
compile "javax.annotation:jsr250-api:1.0"
compile 'com.google.dagger:dagger:2.0'
annotationProcessor 'com.google.dagger:dagger-compiler:2.0'
分别是导入javax注解和Dagger2的相关库。
说明
Dagger2的最基本的注解是@Inject
、@Provides
、@Module
和@Component
,后面我们会用上这4个注解,我们先看一下这几个注解分别代表的意思。以下内容为个人理解。大家可以看看官方网站的解释https://google.github.io/dagger/users-guide。本人英文水平不足,可能理解有错,望大家指正包涵。
@Inject
一般用于注解构造方法或者变量。当其用于注解某个构造方法,而Dagger需要创建该类的实例的时候,Dagger就会调用使用这个注解的构造方法来创建实例。当其用于注解变量的时候,表示该变量将会获得Dagger的注入。<