A simple Android tag emulation library to be included into Android application projects. You can make any Android device with BLE and API level 22 (Android version 5.1+) trackable in Quuppa Intelligent Locating System by including this library into your Android application.
See the android-quuppa-tag demo for an example of how to use this library. Also check out javadoc for the library on javadoc.io.
The library is ready to be included in your Android project as a compiled dependency and available as a JAR dependency through Maven central.
Both android.permission.BLUETOOTH and android.permission.BLUETOOTH_ADMIN permissions are required to use this library.
The library itself is stateless (hence the main operations in QuuppaTag are static). Android requires you to use the same AdvertiseCallback to stop the advertisement that you started it with so you want to keep all the state in it. Lifecycle management of the advertisement is left up to the developer. For a long running background task, you may want to build a service for handling the mechanics of starting and stopping advertisement. The default startAdvertising method generates a tag ID (based on Secure.ANDROID_ID if available) that is guaranteed to stay constant for the lifetime of the application but you can also supply your own generated ID if you so prefer (see source code for more information).
Licensed under Apache 2.0 License.