Skip to content
Allows Android apps to interact with BLE beacons
Java
Branch: master
Clone or download

Latest commit

Latest commit 440af71 May 24, 2020

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci try double piping to true after license acceptance to get around stra… Feb 10, 2019
.github Fix markdown formatting for issue template Sep 21, 2016
eclipse-support Bump to Android Studio to 3.2.1 and build-tools to 28.0.3 Dec 20, 2018
gradle remove bundleEclipse package. This has not been needed in years and i… Nov 14, 2019
lib Merge pull request #975 from vladvladau/remove-bg-reset-after-unbind May 24, 2020
.gitignore Added tasks to be able to publish to bintray and artifactory Jan 3, 2015
.travis.yml Bump to Android Studio to 3.2.1 and build-tools to 28.0.3 Dec 20, 2018
CHANGELOG.md update changelog for release Apr 24, 2020
CONTRIBUTING.md Minor markdown formatting update Mar 24, 2017
LICENSE Update the copyright year and name Oct 13, 2014
NOTICE changes per feedback on #1 Jul 27, 2014
README.md Add support for covid beacon proposal from Apple and Google Apr 19, 2020
api-migrate.md update documentation for recent changes Aug 1, 2014
build.gradle Merge branch 'master' into master Jul 8, 2019
circle.yml Bump to Android Studio to 3.2.1 and build-tools to 28.0.3 Dec 20, 2018
gradle.properties Migrate to Android X May 8, 2019
gradlew Added Gradle Wrapper May 10, 2014
gradlew.bat Updated Build Script Unit Tests May 11, 2014
proguard-rules.pro Provide proguard rules for library users. Sep 3, 2016
settings.gradle Fix buildscript for release builds and upload to jcenter Feb 10, 2019

README.md

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.

Documentation

The project website has full documentation including Javadocs.

Changes from the 0.x library version

This library has changed significantly from the 0.x library version and is now designed to work with open AltBeacons which fully support Android without any intellectual property restrictions. For more information on how to migrate projects using the 0.x APIs to the 2.x APIs, see API migration.

Downloads

Binary

You may download binary releases here.

JCenter

Add JCenter to your build file's list of repositories.

repositories {
    jcenter()
}

to use the JCenter 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 3.4.1 and Gradle 5.1.1

Key Gradle build targets:

./gradlew test # run unit tests
./gradlew build # development build
./gradlew release -Prelease # release build

License

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

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
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 david@radiusnetworks.com

Publishing to Maven

The following instructions are for project administrators.

  1. Upload you Sonotype signing keypair to Bintray

  2. Configure your ~/.gradle/gradle.properties with:

     signing.keyId=<my key id>
     signing.password=<my passphrase>
     signing.secretKeyRingFile=~/.gnupg/secring.gpg
     signingPassword=<my passphrase>
     
     bintrayUserName=<bintray username>
     bintrayKey=<bintray api key>
    
  3. Run the build and upload

     git tag <version>
     git push --tags 
     ./gradlew release -Prelease
     ./gradlew bintrayUpload -Prelease
    
  4. Log in to JCenter, hit the button to publish the release, then select the Maven tab and enter your credentials to Sync to Maven

You can’t perform that action at this time.