首先说说iBeacon是什么:
iBeacons 是IOS7系统推出的功能。利用蓝牙4.0(低功耗蓝牙)进行数据传输(iphone 4s 以上设备)。手持设备能够在一定的范围内(可以达到50m之内)收到IBecons基站发送的信号。任何实现了IBeacon协议的蓝牙设备都可以充当ibeacon基站使用。不同于GPS,蜂窝数据,wifi定位方式。蓝牙4.0本身的成本低,设备的耗电量也低所以相比其它定位方式有自己的优势。并且这种定位直接是端对端的直接定位,省去了GPS的卫星和蜂窝数据的基站通信,是对现有定位技术的一个有效的补充,有其利用的独特的场景和价值。
Identifying the Beacon:(识别beacon设备)
beacon设备有三个属性:用这三个属性来区别不同的beacon设备
Available in iOS 7.0 and later. 官方注明:尽在ios7.0以上可用
@property(readonly, nonatomic, strong) NSUUID *proximityUUID
@property(readonly, nonatomic, strong) NSNumber *major
@property(readonly, nonatomic, strong) NSNumber *minor
Determining the Beacon Distance(确定距离属性)
@property(readonly, nonatomic) CLProximity proximity
The value in this property gives a general sense of the relative distance to the beacon. Use it to quickly identify beacons that are nearer to the user rather than farther away.(这个属性值只是给出一般意义上的距离关系,当靠近时用这个属性可以快速识别beacon,)
@property(readonly, nonatomic) CLLocationAccuracy accuracy
(表示精度,米单位,不能精确表示,会被射频信号干扰)
@property(readonly, nonatomic) NSInteger rssi
(表示信号强度,为采样平均值)
Constants(包含beacon反映出的距离相关信息)
typedef {
CLProximityUnknown, (没有发现)
CLProximityImmediate, (比较近)
CLProximityNear, (相当的近)
CLProximityFar (比较远)
} CLProximity;