Awesome Open Source
Awesome Open Source

Android Beacon Library

Build Status

An Android library providing APIs to interact with beacons. Please visit the project website for how to use this library.

IMPORTANT: By default, this library will only detect beacons meeting the AltBeacon specification.

If you want this library to work with proprietary or custom beacons, see the BeaconParser class.

What does this library do?

It allows Android devices to use beacons much like iOS devices do. An app can request to get notifications when one or more beacons appear or disappear. An app can also request to get a ranging update from one or more beacons at a frequency of approximately 1Hz.


The project website has full documentation



You may download binary releases here.


Add Maven Central to your build file's list of repositories.

repositories {

to use the Maven Central Repository

dependencies {
    implementation 'org.altbeacon:android-beacon-library:${altbeacon.version}'

replacing ${altbeacon.version} with the version you wish to use.

How to build this Library

This project uses an AndroidStudio/gradle build system and is known working with Android Studio 4.1.3 and Gradle 6.5

Key Gradle build targets:

./gradlew test # run unit tests. To see results: `open lib/build/reports/tests/testDebugUnitTest/index.html`
./gradlew build # development build
./gradlew release # release build


Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
See the License for the specific language governing permissions and
limitations under the License.

This software is available under the Apache License 2.0, allowing you to use the library in your applications.

If you want to help with the open source project, contact [email protected]

Publishing to Maven

The following instructions are for project administrators.

  1. Prerequisites:

  2. Configure your ~/.gradle/ with:

     signing.keyId=<my key id>
     signing.password=<my passphrase>
     signing.secretKeyRingFile=<path to exported gpg file>
     signing.password=<my passphrase>
     ossrhUsername=<sonotype server username>
     ossrhPassword=<sonotype server password>
  3. Run the build and upload

     git tag <version>
     git push --tags 
     ./gradlew release
     ./gradlew mavenPublish # Wait 10 mins before using the next command
     ./gradlew closeAndReleaseRepository
  4. Keep checking for a half hour or so at to see that the new release shows up.

Alternative Project Comparisons
Related Awesome Lists
Top Programming Languages

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Java (412,491
Gradle (13,071
Ble (3,017
Beacon (1,951