Search code examples
ioscllocationmanageribeaconios8

iOS 8 and iBeacon - kCLErrorRegionMonitoringDenied


I have been working with iBeacons for the last few months. I have just recently updated to iOS8 Beta 1 and have found that region monitoring and ranging no longer works on my beacon apps.

It is being caused by permissions. I now get a kCLErrorRegionMonitoringDenied error returned when attempting to start region monitoring. This error corresponds to a user deselecting the location permissions for the app.

If I go into Settings>Privacy>Location Services I get some weird behaviour. Sometimes my app appears on this list with no setting chosen, and other times it doesn't appear on the list at all. If I manually change the setting to 'Allow' and then close Settings, then go back to Settings>Privacy>Location Services I have the same problem - the app might not appear on the list or the settings are not set.

This is obviously a bug in iOS8 beta, just wondering if anyone else has this problem and/or found a workaround?


Solution

  • For iBeacons in iOS8, you must use requestAlwaysAuthorization, not requestWhenInUseAuthorization

    (via: http://nevan.net/2014/09/core-location-manager-changes-in-ios-8/)