A reactive, interface-driven central role Bluetooth LE library for Android
What is RxCentralBle?
RxCentralBle provides a simple reactive paradigm for connecting to and communicating with Bluetooth LE peripherals from the central role. It is ideal for all applications – in particular those that require multiple concurrent Bluetooth LE integrations.
RxCentralBle avoids many known Android pitfalls, including limitations in Android 7 & 8 around scanning operations, serial FIFO queueing for GATT, and others.
RxCentralBle powers Uber’s Bluetooth LE integrations on Android, including the next-generation Uber Beacon.
NEW! Uber Engineering Blog article detailing RxCentral cross-platform design (RxCBCentral for iOS coming soon!) and techniques for Android.
Key Features:
- Reactive; subscribe to actions to trigger them, dispose to stop
- Built-in operation queue; respects the serial nature of Android’s BluetoothGatt
- Built-in GATT write segmentation; all writes are automatically chunked into MTU-sized segments
- Interface-driven; customize the library with your own implementations
- Manager-based; two managers for all connectivity and communication
Applicability:
RxCentralBle optimizes for the following use cases:
- Where the ability to connect to and communicate with a Bluetooth 4.0+ LE peripheral is needed
- Where the peripheral is Bluetooth 4.0+ LE compliant and acts per the specification
- Where the peripheral does not require Bluetooth 4.0 specified authentication
Overview
- Pricing: Free
- Resource Link: https://github.com/uber/RxCentralBle
- Resource Maker on Twitter: Uber Open Source
- Mobile Platform Destination: Android Apps
- Mobile Platform Support: Native Android
- Programming Languages: Java
Related resources
MapScaleView
Scale bar for Android Maps
Simplicity
A simple way to implement Facebook and Google login in your iOS apps
Deviice
Swift library to check the device on which the app is running