Event bus for Android and Java that simplifies communication between Activities, Fragments, Threads, Services, etc. Less code, better quality.
Alternatives To Eventbus
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Eventbus24,2865,364643 months ago8December 08, 2021147apache-2.0Java
Event bus for Android and Java that simplifies communication between Activities, Fragments, Threads, Services, etc. Less code, better quality.
3 years agomitJava
Receive the activity result directly after the startActivityForResult with InlineActivityResult
3 years ago1apache-2.0Java
Android reactive event bus that simplifies communication between Presenters, Activities, Fragments, Threads, Services, etc.
Realm Book Example82
5 years ago1otherJava
This is an example rewrite of AndroidHive's messy tutorial, accompanying the following article on Realm.
Senecaoop345 Attic63
2 years agoC++
This folder, attic, contains code fragments. Like most attics, this attic needs a good cleaning. Some fragments are from the usual places on the web, cplusplus.com, stackoverflow, etc. Some fragments are DIY code written in class. Some fragments are as-is as found on the web while others are heavily modified to make work or add functionality. Some fragments are useful, some are not. Most fragments work, some don't. Notable Useful Fragments ======================== fastforward.cpp - a summary of OOP345. funcptr.cpp - examples of the many ways of passing function names to other functions: direct call, c-style function pointer, c++-style function pointer, function object (functor), lambda, bind examples of intersting functions to pass function to: thread, async, packaged_task sp?.cpp - smart pointer resources mi-*.cpp - multiple inheritance resources, clone+diamond problem theading?01?.cpp - threading101?.cpp - basic threading, mutexes - threading201?.cpp - futires and promises - threading301?.cpp - async, packaged_task - threading401?.cpp - how things were done before async + packaged task thread-*.cpp - cool thread code, such as thread pools ll*.cpp - linked list code moveSimple.cpp - move semantics stl-calc-*.cpp - postfix calculator using stl stack, list, vector, deque containers vectorchar*.cpp - how to make a string class mased on std::vector<char> dp-composite*.cpp - composite (tree) design pattern code alarmsetjmp.cpp + setjmp*.cpp - use alarm and setjmp to do interesting things swap.cpp - swapping data in place (without using a temporary) using xor and add operators. asmlist.cpp - how to generate an in-line assembler listing of the code generated by the compiler popen.cpp - how to start up a pipe to a program and read the output from the program folder threading-concurrency_in_action - pdf and sample code from Concurancy in Action book
5 years agoapache-2.0Kotlin
Android Interview Questions By Firoz20
a year ago
Here is collection for all interview questions asked in different companies in India for an fresher to experienced android developer.
Android Developers Guide5
4 years agomitHTML
Android官方文档(Android Developer Guide)翻译项目
5 years agoC++
C++ interview assignment from late 2012
7 years agogpl-3.0Java
A publish/subscribe EventBus base on RxJava simplify communication between Activity, Fragment, thread, etc. Least code.
Alternatives To Eventbus
Select To Compare

Alternative Project Comparisons


EventBus is a publish/subscribe event bus for Android and Java.

Build Status Follow greenrobot on Twitter


  • 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:

    public static class MessageEvent { /* Additional fields if needed */ }
  2. Prepare subscribers: Declare and annotate your subscribing method, optionally specify a thread mode:

    @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:

     public void onStart() {
     public void onStop() {
  3. Post events:

     EventBus.getDefault().post(new MessageEvent());

Read the full getting started guide.

There are also some examples.

Note: we highly recommend the EventBus annotation processor with its subscriber index. This will avoid some reflection related problems seen in the wild.

Add EventBus to your project

Available on Maven Central.

Android projects:


Java projects:


R8, ProGuard

If your project uses R8 or ProGuard this library ships with embedded rules.

Homepage, Documentation, Links

For more details please check the EventBus website. Here are some direct links you may find useful:






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.

Other projects by greenrobot

ObjectBox (GitHub) is a new superfast object-oriented database.

Essentials is a set of utility classes and hash functions for Android & Java projects.

Popular Thread Projects
Popular Fragment Projects
Popular Control Flow Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.