Dagger2使用

Dragger2是安卓使用的依赖注入的方式,开发从IOC控制翻转转换到apt依赖注入。

注入方式:构造函数注入,接口方式注入,注解方式注入。


第一步:添加lib包

compile 'com.google.dagger:dagger:2.12'
annotationProcessor 'com.google.dagger:dagger-compiler:2.12'

第二步:使用@Inject 对服务类进行注入

public class Rose {

    @Inject
    public Rose(){}

    public String say(){
        return "我是玫瑰花";
    }
}

第三步:通过@Component 创建接口容器

@Component
public interface MainActvitiyComponent {

    void inject(MainActivity activity);
}

第四步:将Activity装入容器

    @Inject
    Rose pot;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        tv = (TextView)this.findViewById(R.id.tv);
        //需要先编译,通过apt进行代码的自动生产
        DaggerMainActvitiyComponent.create().inject(this);
        
        tv.setText(pot.say());
    }
}

这样一个最为简单的使用Dagger2的方法就完成了。


你可能感兴趣的:(第三方,android)