CoreLocation kCLErrorDomain error 5
clregion, cocoa-touch, core-location, objective-c
Solution
I hate to answer my own question, but I have found the solution to my issue. A `kCLErrorDomain` code/error of 5 denotes that you have tried to monitor more than 20 `CLRegions`. In my case, both subclasses were guilty of monitoring more than 20 regions.
Problem
I subclassed a `CLRegion` to support Polygons via overriding `containsCoordinate:` to use ray casting logic instead of the original distance crunching logic. The subclass is initialized via the normal method (`initCircularRegionWithCenter:radius:identifier:`), then `CLLocationCoordinate2d`s are added as `NSValue`s to a mutable array. These coordinates are used during the ray casting logic. As soon as I try to use the CLRegion subclass, I am confronted with a ton of errors in my application logic, as well as the following error: ``` 2013-07-18 16:46:44.515 Geofencing[4816:907] (identifier 6C11CBAF-3EE4-4257-9D75-9724F4349B5D) <+39.86605072,-75.54420471> radius 186.54m: Error Domain=kCLErrorDomain Code=5 "The operation couldn’t be completed. (kCLErrorDomain error 5.)" ``` I also tried a different subclass that does not modify any methods but adds a method for reading metadata from an NSDictionary. I was confronted with the same error. What is going on? Is subclassing CLRegion feasible?