EventBus 3.11消息传递框架
安卓开发的消息传递神器——EventBus 3.11的 jar 包现在也有了最新版本,稳定、轻量、好用。想在Activity
、Fragment
、Service
之间优雅地传消息,不用再写一堆Handler
或BroadcastReceiver
了,用它就对了。
EventBus的最大优点是解耦,你写发送逻辑的时候根本不用管谁来接收,哪怕组件之间完全没关联,也能通过事件订阅方式轻松通信。写起来少废话,逻辑也清晰。是在项目结构复杂时,真的挺省事儿。
比如你在子线程拿到网络求结果,想通知 UI 更新,以前是不是得整runOnUiThread
或者 Handler?用EventBus.getDefault().post(result)
就完了,UI 层订阅事件后自动响应,响应也快,代码也清爽。
另外,它对 Android 环境做了多优化,性能挺不错,内存占用也低。而且 API 用起来不难,几分钟就能上手,挺适合新人和老鸟快速集成。
要注意的是,EventBus不是万能的,别什么场景都用它,状态同步、全局管理这类别滥用。消息一多也容易管理混乱,建议事件命名规范些,比如用UserLoginEvent
、NetworkErrorEvent
这种清晰的类名。
需要更详细的教程或者参考项目?下面这些资源还不错:
如果你正在做组件化开发,或者项目里组件通信比较频繁,可以试试 EventBus,轻巧靠谱,还挺顺手。
下载地址
用户评论