CLLocationManager does not fire didExitRegion until watched region is > 5000 meters away

Originator:mge.temp
Number:rdar://17064346 Date Originated:05/29/2014
Status:Open Resolved:
Product:iOS Product Version:7.1.1
Classification:Serious Bug Reproducible:YES
 
Summary:
Using a test app on the iOS simulator as well as on an iPhone 5S the CLLocationManager doesn't seem to fire didExitRegion callbacks in an expected way. Regardless of the radius of the circular region being monitored, the callback won't happen until a threshold of around 5000 meters is hit.

Steps to Reproduce:
1. Run the attached app
2. Start region tracking by selecting Debug -> Location -> Freeway Drive in the iOS simulator
3. Monitor the app. The large # indicates the distance from the center of the watched region.
4. After about 190 seconds and 5300 meters didExitRegion will finally fire.

Expected Results:
The didExitRegion callback should fire shortly after the device has left the region being monitored.

Actual Results:
The didExitRegion callback only happens after the distance from the region is much larger than the configured threshold.

Version:
iOS 7.1.1

Notes:


Configuration:
iOS Simulator; iPhone 5s

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!