Search code examples
androidibeaconaltbeaconestimoteeddystone

Estimote SDK vs Altbeacon Library for Android Development


What are the pros and cons of using the Estimote SDK or the Altbeacon beacon library for developing Android apps using BLE beacons?

I am only talking about the Estimte SDK not their cloud services. I don't necessarily want to use Estimote beacons but as far as I understand the SDK works with any iBeacon or Eddystone beacons (without the cloud services).


Solution

  • Some of the main benefits of the Android Beacon Library vs. proprietary alternatives:

    • Open source. There are no secrets to how it works. If you have a problem with the library, you can take a look at the source code yourself and even modify it to suit your needs. You can even share your changes and propose they be added to the library.

    • Works with many beacon brands and types. The library is designed to be agnostic of the beacon brand and transmission format, so it works with beacons from any vendor using a variety of formats. In addition to AltBeacon, Eddystone, and iBeacon, it is possible to configure the library to work with a wide variety of beacon formats, potentially even those that have not been invented yet.

    • Very widely used. The library is used by over 4,000 mobile apps in the Google Play store and has been installed on over 150 million devices.

    • Active Community Support. Doing a search on StackOverflow for "Android Beacon Library" returns a large number of questions and answers. It's easy to find help when working with the library.

    In addition, the library has robust support for background launching and battery saving, and supports beacon transmission on Android 5+ devices.

    A proprietary alternative like the the Estimote SDK may be useful for non-standard functions that only work on Estimote beacons, for example, configuring the beacon's identifiers using the proprietary Estimote GATT Service.

    Full Disclosure: I am the lead developer on the Android Beacon Library open source project.