For a bluetooth library for android development, the first results are jasonchenlijian/fastble (This is a comprehensive Android library that simplifies Bluetooth Low Energy scanning, connection management, and data transfer, though it is specifically focused on BLE rather than Bluetooth Classic), nordicsemi/android-ble-library (This library provides a robust, native Android framework for managing BLE connections, GATT services, and data exchange, making it a highly effective tool for developers building Bluetooth-enabled applications) and permissionlesstech/bitchat-android (This is a decentralized messaging application that utilizes Bluetooth mesh networking for peer-to-peer communication, providing a practical implementation of Bluetooth-based data transfer and discovery for Android). aicareles/android-ble and dariuszseweryn/rxandroidble round out the shortlist. Compare the match explanations and check the project documentation against your requirements.
Find the best Android Bluetooth libraries. We ranked top open-source options by activity and features to help you compare and pick the right one.
FastBle is a development framework for Android designed to simplify scanning, connecting, and exchanging data with Bluetooth Low Energy devices. It provides a structured transport layer for managing communication and a dedicated system for discovering nearby peripherals. The framework features a multi-connection manager that maintains simultaneous links to several peripherals and employs automated reconnection logic to ensure stability. It includes a data transport layer that handles automatic packet splitting for payloads that exceed standard transmission limits. The library covers device d
This is a comprehensive Android library that simplifies Bluetooth Low Energy scanning, connection management, and data transfer, though it is specifically focused on BLE rather than Bluetooth Classic.
This library provides a development framework for managing Bluetooth Low Energy connections and data exchange on Android devices. It functions as both a client manager for executing read and write operations with hardware peripherals and a server framework for configuring local devices to host GATT services. The library distinguishes itself through a managed, queue-based architecture that serializes asynchronous requests to prevent command collisions and ensure reliable transmission. It automates complex tasks such as packet splitting, service discovery, and connection retries, while maintain
This library provides a robust, native Android framework for managing BLE connections, GATT services, and data exchange, making it a highly effective tool for developers building Bluetooth-enabled applications.
BitChat Android is a decentralized peer-to-peer messenger that enables communication over Bluetooth mesh networks without requiring any internet connection or central servers. It functions as a full mesh network chat app and a privacy-focused communication tool, with every message encrypted end-to-end using per-session cryptographic keys that ensure forward secrecy. The app operates without accounts or persistent identifiers, resisting user tracking at the protocol level. To strengthen privacy and efficiency, BitChat injects cover traffic to obscure real communication patterns and includes an
This is a decentralized messaging application that utilizes Bluetooth mesh networking for peer-to-peer communication, providing a practical implementation of Bluetooth-based data transfer and discovery for Android.
This library is a framework for Android applications to manage Bluetooth Low Energy connectivity, peripheral discovery, and data exchange. It provides a standardized interface for integrating wireless hardware, enabling developers to handle complex communication tasks through a structured connectivity framework. The library distinguishes itself by implementing a managed operation pipeline that serializes asynchronous commands to prevent hardware collisions. It utilizes a state-machine-based approach to track connection lifecycles, which automates retry logic and maintains stable links across
This library provides a comprehensive set of tools for managing Bluetooth Low Energy operations, including scanning, connection management, and data transfer, making it a suitable native implementation for developers building Bluetooth-enabled Android applications.
RxAndroidBle is a reactive framework designed to simplify Bluetooth Low Energy interactions on Android. It functions as a wrapper for the system Bluetooth stack, converting low-level asynchronous callbacks into observable streams to manage device discovery, connection lifecycles, and data communication. The library distinguishes itself by normalizing inconsistent vendor-specific Bluetooth behaviors into a predictable interface, ensuring reliable cross-device compatibility. It incorporates an internal operation queueing mechanism that serializes concurrent hardware requests, preventing command
This library provides a reactive interface for Android Bluetooth Low Energy operations, making it a specialized tool for developers to implement BLE scanning and communication within their own applications.
This framework provides a simplified interface for managing Bluetooth Low Energy connections and peripheral hardware communication on Android devices. It acts as a thin abstraction layer over the native system Bluetooth stack, reducing boilerplate code while facilitating device discovery, connection lifecycle management, and data exchange. The library distinguishes itself by implementing a state-machine approach to connection management, which tracks hardware links to ensure reliable transitions between scanning, connecting, and active communication. It further simplifies complex hardware int
This is a library designed to simplify Bluetooth Low Energy (BLE) communication on Android, providing a callback-based framework for device interaction and data transfer. While it focuses specifically on BLE rather than Bluetooth Classic, it is a direct tool for implementing Bluetooth functionality in Android applications.
Opendrop is a Python implementation of the AirDrop protocol used for transferring files and links between devices over wireless connections. It functions as a peer-to-peer wireless file transfer system and a tool for automating the exchange of network passwords using specialized handshake mechanisms. The project enables the discovery of nearby hardware by scanning for Bluetooth Low Energy advertisement packets and searching local subnets for specific service signatures. It establishes direct communication links through monitor mode and raw frame injection to move data without requiring a stan
This is a Python-based implementation of the AirDrop protocol designed for Linux and macOS, rather than an Android-native application or library for general Bluetooth communication.
bluetui is a text-based user interface for managing Bluetooth devices and adapters. It serves as a terminal application that interfaces with the BlueZ stack to control wireless radio hardware and connection states. The project provides a keyboard-driven controller for scanning for nearby discoverable hardware and establishing secure pairings with new peripherals. It allows for the management of paired devices, including the configuration of trust settings and the assignment of custom nicknames to simplify reconnection. The application includes capabilities for Bluetooth adapter control to to
This is a terminal-based Linux utility for managing Bluetooth adapters via the BlueZ stack, rather than an Android-native application or library for mobile Bluetooth communication.
OpenHaystack is a software framework for creating and tracking custom Bluetooth beacons using the Apple Find My crowdsourced location network. It provides a system for generating encrypted cryptographic keys and flashing firmware onto embedded hardware to broadcast trackable Bluetooth signals. The project enables the retrieval and decryption of geographic coordinates for remote hardware using private keys to recover device movement history. It also includes a location proxy that fetches network reports from the Apple ecosystem and serves that data to remote applications. The toolset covers c
This project is a specialized framework for interacting with the Apple Find My network rather than a general-purpose Android Bluetooth utility for device discovery and data transfer.
Gadgetbridge is an open-source Android wearable device manager and health tracker. It enables users to connect and manage smartwatches and fitness trackers without requiring vendor cloud accounts or proprietary companion software. This cloudless framework prioritizes privacy by storing all health and activity data locally on the mobile device. It functions as an alternative to proprietary apps by removing the need for vendor-managed cloud services to synchronize device data. The application provides a system for device management and health tracking, utilizing a modular driver system to supp
Gadgetbridge is a specialized wearable device manager that uses Bluetooth for proprietary synchronization, rather than a general-purpose Bluetooth utility application for discovery and data transfer.
| Repository | Stars | Language | License | Last push |
|---|---|---|---|---|
| jasonchenlijian/fastble | 5.5K | Java | Apache-2.0 | |
| nordicsemi/android-ble-library | 2.4K | Java | BSD-3-Clause | |
| 4.8K |
| Kotlin |
| mit |
| aicareles/android-ble | 2.8K | Java | Apache-2.0 |
| dariuszseweryn/rxandroidble | 3.5K | Java | Apache-2.0 |
| litesuits/android-lite-bluetoothle | 969 | Java | Apache-2.0 |
| seemoo-lab/opendrop | 9.7K | Python | GPL-3.0 |
| pythops/bluetui | 2.6K | Rust | gpl-3.0 |
| seemoo-lab/openhaystack | 13K | Swift | AGPL-3.0 |
| freeyourgadget/gadgetbridge | 4.6K | Java | AGPL-3.0 |