Proximity Beacon API vs Android Beacon Library?
Asked Answered
B

1

7

I'm new with the beacon technology and I have some doubts.

  1. What is the difference (who is better) between the Proximity Beacon API vs Android Beacon Library?
  2. Proximity Beacon API is completely free? I was searching and I saw in the Google Developer Console that this API have a limit of request per day (1,000,000 request/day). I tried to search what is the quota if I spend that amount but I didn't find nothing. Android Beacon Library have a request per day limit?

Until now I'm going to use the Eddystone format, so, both of them support Eddystone.

Thanks

Backwards answered 30/1, 2016 at 1:6 Comment(0)
V
15

Both the open source Android Beacon Library or Google's Proximity Beacon API allow Android apps to detect Eddystone-compatible beacons.

  • The Android Beacon Library is a client only API. It is completely free and covered by the Apache 2 open source license, with no resource limits. It does not require any server infrastructure and provides callbacks when beacons are detected, and ranging callbacks to tell you approximately how far they are away when they continue to be around. It can also launch your app in the background on beacon detection. It is a good choice when you need a general-purpose beacon solution or need flexible low-level access to beacon detections.

  • Google's Proximity Beacon API, by contrast, is a higher-level and more specialized server API. It requires that beacons be registered with Google's servers, and allows attaching both public and private metadata to these beacons. The related Nearby Messages API will then provide a callback when a beacon is discovered, and tell you the data that you have attached to this beacon. It is designed to return high-level beacon data, and not provide low-level access to beacon detections. As you mention, there are some limits on how many calls you can make. This library requires a recent version of Google Play Services, which is typically available on newer phones in the United States and Europe, but is typically not available in China and some other countries.

Which you choose depends on which helps you solve your use case. If you require the cloud-storage features of a server-based solution, and can live with dependencies on Google Play Services, then this may be the right choice for you. If you need a more flexible solution, and do not require a server API, the Android Beacon Library may work well for you.

EDIT: one other important point to add here: Any API backed by a server is dependent on an entity keeping those servers going to keep your app working in the future. It is not unusual for companies, particularly Google, to discontinue services when the company's business priorities change. Consider the long list of Google's discontinued services, including Google Nearby support for beacon notifications. If you need your app to continue working long-term, be careful about adding a dependency on a third party to keep a server running. This creates risk. Because the Android Beacon Library requires no server, there is no risk of it not working in the future based on the whims of corporate decision-making. The same is not true of the Proximity Beacon API.

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

Vinylidene answered 30/1, 2016 at 1:49 Comment(3)
Thanks @davidgyoung. So, I was thinking right. Still I don't know what API I'm going to use, but probably I will use Android Beacon Library for having no restriction on requests.Backwards
Could you, please, expand a bit on 'flexible low-level access to beacon detections'? Just got our first client request for beacons and they want more of a 'location tracking' feature than a 'display a URL' sort of thing - hope that makes sense. What they want is more 'Star Trek' (knowing a person's movements and location) than 'advertising' (beacons broadcasting something to sell). Perhaps you have some pointers for where to learn more (and also, they are more iOS fans than Android, but I think we will have to support both)Empson
The Android Beacon Library is designed to: (a) Tell you when a beacon appears and disappears. (b) Optionally launch your app in the background when the previous happens. (c) Give you updates every second (configurable) with an estimate of the distance to all beacons you at tracking. It lets you do this in the foreground, in the background, and with highly configurable scan intervals using a variety of beacon formats. It is a powerful tool box to do whatever you want with beacons without having to program the BLE layer. Its API is similar to iOS CoreLocation making cross-platform easy.Vinylidene

© 2022 - 2024 — McMap. All rights reserved.