https://github.com/google/agera
Reactive Programming for Android
https://github.com/google/agera
agera android reactive
Last synced: 10 months ago
JSON representation
Reactive Programming for Android
- Host: GitHub
- URL: https://github.com/google/agera
- Owner: google
- License: apache-2.0
- Archived: true
- Created: 2015-12-17T13:22:58.000Z (about 10 years ago)
- Default Branch: master
- Last Pushed: 2022-01-13T14:58:57.000Z (about 4 years ago)
- Last Synced: 2024-08-01T15:07:56.374Z (over 1 year ago)
- Topics: agera, android, reactive
- Language: Java
- Homepage:
- Size: 945 KB
- Stars: 7,201
- Watchers: 378
- Forks: 640
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
- awesome-android-libraries - Agera
- awesome-java - Agera
- awesome-jvm - Agera - Reactive Programming for Android by Google. (Memory and concurrency)
README

Reactive Programming for Android
================================
[](https://travis-ci.org/google/agera)
[](https://codecov.io/gh/google/agera)
[](https://bintray.com/ernstsson/Agera/agera/_latestVersion)
Agera is a set of classes and interfaces to help write functional, asynchronous, and reactive
applications for Android.
Requires Android SDK version 9 or higher.
Usage
-----
To add a dependency using Gradle:
```
compile 'com.google.android.agera:agera:1.4.0'
```
Learn about Agera
------------------
- [Agera Explained](https://github.com/google/agera/wiki)
- [Agera Codelab](https://codelabs.developers.google.com/codelabs/android-agera)
Experimental Sample Extensions
------------------------------------
A few experimental sample extension libraries for Agera are also provided. These are:
- Content - For `android.content` interaction, such as `BroadcastReceiver` and `SharedPreferences`
- Database - For `SQLiteDatabase` interaction
- Net - For `HTTPUrlConnection` interaction
- RVAdapter - For `RecyclerView` interaction
- RVDatabinding - For `RecyclerView` data binding interaction
To add dependencies to these using Gradle:
```
compile 'com.google.android.agera:content:1.4.0'
compile 'com.google.android.agera:database:1.4.0'
compile 'com.google.android.agera:net:1.4.0'
compile 'com.google.android.agera:rvadapter:1.4.0'
compile 'com.google.android.agera:rvdatabinding:1.4.0'
```
FAQ: What's the relation with RxJava?
-----
See [this issue](https://github.com/google/agera/issues/20).
Links
-----
- [GitHub project](https://github.com/google/agera)
- [Issue tracker](https://github.com/google/agera/issues/new)
### (Unofficial) wiki translations
- [Chinese](https://github.com/captain-miao/AndroidAgeraTutorial/wiki)
- [Korean](https://github.com/ZeroBrain/agera-wiki-kr/wiki)
### (Unofficial) Extensions
- [retrofit-agera-call-adapter](https://github.com/drakeet/retrofit-agera-call-adapter)