Search code examples
androidbeaconeddystone

Resolving EddyStone EID using Android Beacon Library


I'm trying to resolve the EID of a (RadiusNetwork 4X) beacon that was registered with Google using the Android Beacon Library. I want to use the google API key, as opposed to o-auth to achieve that.

The documentation for the library advises to use this:

EidResolver resolver = getEidResolverForGoogleOAuthToken(googleOAuthToken);
String beaconName = resolver.resolve(ephemeralId);

I'm a bit at a loss. Where is this function located? It doesn't seem to be part of the Android Beacon Library. Neither does it seem to be part of the Google Proximity API - that's all web based as it looks? Is there any full example for this? Thanks


Solution

  • The EID resolver is a proposed addition to the Android Beacon Library that has not been merged into a formal release, which explains why you cannot find it. The docs hint at this, but it is admittedly unclear.

    In order to use the function, you must use a branch build of the library. If you need help doing that, contact me through my profile link and I will assist.

    You can see the pull request for this change on the library's GitHub repo here: https://github.com/AltBeacon/android-beacon-library/pull/364

    The resolver is designed to support an API key using a separate constructor, but it has been so long since I tried it, I cannot remember if it was fully tested and working:

    EidResolver getInstanceWithGoogleApiKey(String googleProximityBeaconApiKey, String resolutionAttachmentNamespacedType)
    

    The only reason this has not been merged to a formal release is due to limited interest in helping test it. (You are the first one to ask about it in over a year!)

    If you are up for a little back and forth getting it working for you, we can probably get this merged into a formal release at last.