Detect and connect to nearby devices with iBeacons and CoreBluetooth.
To simulate functionality, select Client on one device, then select Server on the other. As the proximity of the test devices is likely pretty close, expect delegate methods to fire quickly.
Just, create a few UUIDs for OWUProximityManagerConstants.h
and then
Setup the Sever:
[[OWUProximityManager shared] startupServerWithDelegate:delegate]
Setup the Client:
[[OWUProximityManager shared] startupClientWithDelegate:delegate]
// defaults to CLProximityNear
[OWUProximityManager shared].desiredProximity = CLProximityImmediate
Two things:
proximityClientDidEnterRegion
will not be called if the Client starts while already in range of the ServerproximityClientDidExitRegion
will not be called until about a minute after exiting the region (dev forum link)
- More fine tuning of BeaconRegion measured power
- Handle invalidated services in
OWUProximityServer
- Properly handle return from local notification
- And moar.
- Suggestions, issues and pull requests are more than welcome.
David Ohayon
OWUProximityManager is available under the MIT license. See the LICENSE file for more info.