EventBus3.x的正确打开方式
16lz
2021-01-26
EventBus的基本使用我就不介绍了,可以看GitHub地址。
EventBus内部默认使用的是运行时反射,反射当然是影响性能的。为此EventBus3.0做出了优化,但是只升级EventBus版本并没有用到优化策略,需要我们加些代码才行。
1.在gradle文件添加如下:
android { defaultConfig { javaCompileOptions { annotationProcessorOptions { arguments = [ eventBusIndex : 'com.example.myapp.MyEventBusIndex' ] } } }}dependencies { def eventbus_version = '3.2.0' implementation "org.greenrobot:eventbus:$eventbus_version" annotationProcessor "org.greenrobot:eventbus-annotation-processor:$eventbus_version"}
2.编译项目,在Application中添加如下代码:
EventBus.builder().addIndex(new MyEventBusIndex()).installDefaultEventBus();
ok,现在EventBus内部已经不是用反射了(当然不是完全不用反射,而是把最该优化的地方替代了反射),而是用APT(注解解析工具)在编译时生成代码,从而提高了性能。
详细说明请看官网文档
更多相关文章
- ffplay2 android 版正式公布
- android中的多媒体应用MediaPlayer
- Android进行单元测试难在哪-part4
- android中WebView和javascript实现数据交互实例
- NDK Android* 应用移植方法 APP_ABI := armeabi armeabi-v7a x86
- Android代码性能优化技巧 (一)
- 关于WebVeiw的例子(一)
- 【ArcGIS for Android】使用自定义Callout显示地图信息
- android studio 查找替换