一、触发iBeacon保活的时机
当中心设备和外部设备联机成功的时候需要设定一个开启iBeacon标记,并打开iBeacon保活,这样就是在app杀死后可以被iBeacon信号拉起来。
二、触发iBeacon保活后如何实现主动链接蓝牙
第一种是iBeacon测距,中心设备通过iBeacon信号会搜索周边 iBeacon外部设备,已测量两者之间的距离。大体有三种一种是很近,距离10米,以及50米开外。app在前台的时候iBeacon保活就开始测距代理方法。
第二种是进入iBeacon信号范围,当中心设备从远到近进入信号范围内,会触发进入iBeacon范围代理方法。
第三种是离开iBeacon信号范围,当中心设备从近到远离开信号范围内,会触发里来iBeacon范围代理方法。
第四种是app熄屏后再亮屏,这个时候也会触发iBeacon determine代理方法。
三、影响iBeacon感应灵敏度的因素
外部设备的BNCM蓝牙广播依据各自业务场景都有不同广播频率,蓝牙信号可以有通用蓝牙信号以及iBeacon信号,基于具体场景在两者之间分别设定广播的频次,可以下载一个app进行测试蓝牙信号强度。
四、功耗的问题
当蓝牙链接成功后就取消定位测距这样可以减少很多的电量消耗。如果蓝牙断开异常可以开启测距,以求重新去链接蓝牙。
五、适配场景:
监听蓝牙链接成功-->开启保活;
监听用户退出登录-->断开蓝牙;
监听用户切换车辆-->ibeacon重置
监听用户主动断开-->不去参与链接蓝牙流程
监听删除被分享车辆时候--》断开蓝牙通
六、蓝牙状态同步
如果iBeacon服务模块没蓝牙模块分开,建议将蓝牙状态通过推送给到相关业务模块。