How to get UDID property from ESTUtilityManager didDiscover method?

i am using " - (void)utilityManager:(ESTUtilityManager *)manager didDiscoverBeacons:(NSArray *)beacons " method .

  1. when i am using this method i can get beacon Major,Minor value but i am getting UDID value. How can i get UDID ?
  2. This method did not works when i click Home Button of iPad. i called " [self.utilManager startEstimoteBeaconDiscovery]; " method in background.

Beacon discovery via the Utility Manager is only meant to be used when you need to connect to a beacon, e.g., to change its settings or reconfigure it. Because of that, it (a) doesn’t provide the UUID, and (b) doesn’t work in the background.

For regular use cases, we recommend iBeacon ranging and monitoring instead: What are region Monitoring and Ranging?

Hi Piotr,

Thank you. what is the best way to range in the background and what we need to successfully implement background ranging to pass the app review.

We describe all the possibilities when it comes to background ranging in this article:

Long story short, you can easily range in the background for up to 3 minutes after a monitoring event (enter/exit) wakes up your app. Continuous ranging in the background requires the use of the “location” background mode, but that likely won’t fly past the review.

I think you should be able to do Eddystone discovery (http://developer.estimote.com/eddystone/#ios-quick-start) in the background though, if you enable the “uses Bluetooth LE accessories” background mode. However, this will only keep your app running and discovering beacons when you’re in range of them. When you go out of range, the app will stop—so it’s not as powerful as the “location” background mode, but it’s much easier to get the app approved.