This problem was encountered by me while research for chapter 7 of my book. Apparently other developers have encountered it as well as you can see from several questions on Stack Overflow:
- iOS 7 Ranging beacons: Sometimes ranging is Unavailable, and the only solution is reboot the device
- locationManager:rangingBeaconsDidFailForRegion:withError: kCLErrorDomain 16
- iBeacon: didRangeBeacons stops getting called, must reset device for it to work again
So I am filing this as a dupe hoping for it to be fixed in iOS 8. Or if not, that it will become more visible to Apple.
Filed as rdar://17003408 and on Open Radar.
This gotcha became apparent to me while putting together the sample app for the seventh and last chapter of my book. There I am monitoring for the 10 regions from a plist which are closest to the user. I was removing all monitored regions and re-added the 10 I am interested in. To update the state I called the requestStateForRegion: but didn’t get a state update. Instead the monitoring failed with error code 5. Fortunately a workaround is possible.
Submitted as rdar://16986842 and to OpenRadar.
There are two kinds of Geocoding which you might encounter: forward and reverse. The class doing that for you in iOS is CLGeocoder. It is both capable of doing it forward (from address to lat/long) and reverse (from geo coordinates to placemarks). For this tutorial we will build an app that lets you search for addresses and display the results individually on a map view.
Readers of my book get good news today! My publisher Manning released a new chapter for the early-access-version of the book.
Previously available chapters 1 through 5 have seen lots of improvements and clarifications based on valuable reader feedback as well as the keen eyes of my editor. The first 3 chapters are now locked for pre-production. That means that various experts are honing in on the manuscript and are putting the polish on for the bound book release!
It’s shaping up to be a really awesome publication. If you haven’t pre-ordered the book via Manning’s Early Access Program (MEAP) then please do so today!