So now that iOS 7 is finally out – it took me a little while to get used to the aesthetics and I only have nits with default button hit-area designation (there is none) & the appearance of UIPickers (really?!) – I’ve been playing with CoreLocation / CoreBluetooth and the beacon functionality. It works pretty well 99% of the time.
However I find that the averaging of the beacon accuracy doesn’t match with the typical speed of someone walking with an iOS 7 device in their hand/pocket. The ranging trip events (immediate, near, far) or straight accuracy numbers have a lot of averaging built into them. The polling of signal(s) is easily quick enough, but walking up to my iPhone 5 takes a few seconds before correctly reporting the accuracy… accurately. Sometimes it can take a little longer than a few seconds.
This translates into a feeling of lag. The technology isn’t laggy… the averaging (however it’s accomplished) seems to be the bottleneck. No one wants flaky or intermittent reporting. But there is a fine balance here. You want UIs to be snappy and responsive.
If a user walks close to a beacon, you want that UI to fire right away. Otherwise you’re standing in front of one for a while before the UI can trigger. You may lose that user for that item as they have moved on – or you might pop a UI for something they are no longer standing in front of. A case of musical UIs gone astray.
Perhaps it’s a lot snappier on a 5S or even 5C (doubt it), but as it stands now it’s borderline production ready unless I am doing something wrong in my code.
I have found the accuracy to be greatly wanting. Because of the accuracy issues, I am unable to do a proper triangulation to get precise indoor location. Have you had any luck trying triangulation?
I have found that the accuracy is fairly accurate most of the time. Note: most of the time, not all of the time. If one of your points on a triangle is inaccurate, you may reduce the inaccuracy a bit, but I’m not sure it would be fine enough for you to use like you would intend.
Apple is going to roll iBeacon hardware out in their stores – probably running on some beta foundation code which, if it works better than it does now, we might get in a iOS 7.1 release. At least I’d hope so.