In my previous post I wrote on how to add some code into a Xamarin Forms Solution so that it detects an Estimote beacon. In the below animation, I use the Estimote app in iOS to emulate a virtual beacon (left), and the Xamarin Android app show information of the detected beacon (right)
However, to understand how the app works it is necessary to highlight a couple of things
A beacon is identified in 3 parts:
- UUID (16 bytes)
- major number (2 bytes)
- minor number (2 bytes)
Important: Estimote developer pages has a recommended link to read about this topic (link).
All Estimote beacons uses the same UUID: B9407F30-F5F8-466E-AFF9-25556B57FE6D
In the sample app, we’re going to use a different UUID: 8492E75F-4FD6-469D-B132-043FE94921D8
This is because I am not using real beacons for this test, I’ll use the emulator of beacons which is available in the Estimote app for iOS. In the case of a virtual beacon:
- The UUID is always 8492E75F-4FD6-469D-B132-043FE94921D8
- The values of Major and Minor values are generated randomly to activate the virtual beacon and remain fixed with the same
In the references section there is a link on how to use this feature. With this information we can initialize our app so that it detects beacons (lines 61 and 62)
If we use the Estimote app to detect beacons, we can see that it shows us in virtual detected beacon. Now we can already test the code of our app to see that information us returns for each detected beacon.
When the app detects one or more beacons, the Ranged() event returns a collection of them. As I mentioned in the previous point, the UUID values, Major and Minor are included for each beacon, as well as an additional property to define the prosimity of the beacon.
In coming posts, I will show you how to work with the concept of proximity of the beacon, by now the Proximity property indicates the distance to the beacon with:
Greetings @ Madrid