美文网首页
Gradle插件开发-EventBus自动注册

Gradle插件开发-EventBus自动注册

作者: leewug | 来源:发表于2019-10-09 15:33 被阅读0次

com.eventbus.autoregister

EventBus自动注册与反注册

  • 支持在Activity onCreate方法进行注册,在onDestroy方法中反注册
  • 支持在Fragment onCreate方法进行注册,在onDestroy方法中反注册
  • 支持在View onAttachedToWindow方法进行注册,在onDetachedFromWindow方法中反注册

gradle 依赖配置

buildscript {
    repositories {
        maven {
            url "https://plugins.gradle.org/m2/"
        }
    }
    dependencies {
        classpath "gradle.plugin.com.liwg.eventbus.autoregister:autoRegisterPlugin:1.0.0"
    }
}

apply plugin: "com.eventbus.autoregister"

使用方式和平常使用没有任何区别

省去了手动注册与反注册代码
public class MainActivity extends AppCompatActivity {
    @Subscribe
    public void onEvent(Object object){

    }
}

这是编译自动生成的代码

public class MainActivity extends AppCompatActivity {
    public MainActivity() {
    }

    @Subscribe
    public void onEvent(Object object) {
    }

    public void onCreate(Bundle var1) {
        super.onCreate(var1);
        //自动在Activity的onCreate中生成注册代码
        if (!EventBus.getDefault().isRegistered(this)) {
            EventBus.getDefault().register(this);
        }

    }

    public void onDestroy() {
        super.onDestroy();
        //自动在Activity的onDestroy中生成反注册代码
        if (EventBus.getDefault().isRegistered(this)) {
            EventBus.getDefault().unregister(this);
        }
    }
}
仓库地址 https://github.com/lwugang/EventBusAutoRegister

相关文章

网友评论

      本文标题:Gradle插件开发-EventBus自动注册

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