Baike.dev
All toolsTrendingOpen sourceNewsSubmit
Log in
< 返回工具列表
E

EventBus

> 编程语言
开源

Event bus for Android and Java that simplifies communication between Activities, Fragments, Threads, Services, etc. Less code, better quality.

24.7K stars0 点赞0 次浏览
访问官网GitHub

工具介绍

Event bus for Android and Java that simplifies communication between Activities, Fragments, Threads, Services, etc. Less code, better quality.

EventBus ======== [EventBus](https://greenrobot.org/eventbus/) is a publish/subscribe event bus for Android and Java.
EventBus... * simplifies the communication between components * decouples event senders and receivers * performs well with Activities, Fragments, and background threads * avoids complex and error-prone dependencies and life cycle issues * makes your code simpler * is fast * is tiny (~60k jar) * is proven in practice by apps with 1,000,000,000+ installs * has advanced features like delivery threads, subscriber priorities, etc. EventBus in 3 steps ------------------- 1. Define events: ```java public static class MessageEvent { /* Additional fields if needed */ } ``` 2. Prepare subscribers: Declare and annotate your subscribing method, optionally specify a [thread mode](https://greenrobot.org/eventbus/documentation/delivery-threads-threadmode/): ```java @Subscribe(threadMode = ThreadMode.MAIN) public void onMessageEvent(MessageEvent event) { // Do something } ``` Register and unregister your subscriber. For example on Android, activities and fragments should usually register according to their life cycle: ```java @Override public void onStart() { super.onStart(); EventBus.getDefault().register(this); } @Override public void onStop() { super.onStop(); EventBus.getDefault().unregister(this); } ``` 3. Post events: ```java EventBus.getDefault().post(new MessageEvent()); ``` Read the full [getting started guide](https://greenrobot.org/eventbus/documentation/how-to-get-started/). There are also some [examples](https://github.com/greenrobot-team/greenrobot-examples). **Note:** we highly recommend the [EventBus annotation processor with its subscriber index](https://greenrobot.org/eventbus/documentation/subscriber-index/). This will avoid some reflection related problems seen in the wild. Add EventBus to your project ---------------------------- Available on Maven Central. Android projects: ```groovy implementation("org.greenrobot:eventbus:3.3.1") ``` Java projects: ```groovy implementation("org.greenrobot:eventbus-java:3.3.1") ``` ```xml org.greenrobot eventbus-java 3.3.1 ``` R8, ProGuard ------------ If your project uses R8 or ProGuard this library ships [with embedded rules](/eventbus-android/consumer-rules.pro). Homepage, Documentation, Links ------------------------------ For more details please check the [EventBus website](https://greenrobot.org/eventbus). Here are some direct links you may find useful: [Features](https://greenrobot.org/eventbus/features/) [Documentation](https://greenrobot.org/eventbus/documentation/) [Changelog](https://github.com/greenrobot/EventBus/releases) [FAQ](https://greenrobot.org/eventbus/documentation/faq/) License ------- Copyright (C) 2012-2021 Markus Junginger, greenrobot (https://greenrobot.org) EventBus binaries and source code can be used according to the [Apache License, Version 2.0](LICENSE). Other projects by greenrobot ============================ [__ObjectBox__](https://objectbox.io/) ([GitHub](https://github.com/objectbox/objectbox-java)) is a new superfast object-oriented database. [__Essentials__](https://github.com/greenrobot/essentials) is a set of utility classes and hash functions for Android & Java projects.

核心特点

  • •simplifies the communication between components
  • •decouples event senders and receivers
  • •performs well with Activities, Fragments, and background threads
  • •avoids complex and error-prone dependencies and life cycle issues
  • •makes your code simpler
  • •is tiny (~60k jar)
  • •is proven in practice by apps with 1,000,000,000+ installs
  • •has advanced features like delivery threads, subscriber priorities, etc.

> 标签

Java

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月9日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言
Baike.dev

baike.dev helps you discover great languages, frameworks, databases, DevOps and cloud-native tools.

Quick links

  • Home
  • All tools
  • Trending
  • Open source

About

  • About us
  • Community
  • News

Contribute

Found a great developer tool? Share it with the community.

Submit a tool
© 2026 baike.dev Developer EncyclopediaUpdated daily · Discover great developer tools