iOS蓝牙后台保活

Xcode设置如图:


WechatIMG81.png

在实践中,主要的开发流程有以下:

  1. 新建Central Manager实例并进行监听蓝牙设备状态
  2. 开始搜索外围设备,通过delegate获得数据
  3. 连接外围设备,delegate通知连接结果
  4. 获得外围设备的服务,delegate获得结果
  5. 获得服务的特征,delegate获得结果
  6. 根据服务和特征给外围设备发送数据
  7. 根据delegate回调,从外围设备读数据

蓝牙相关解释

本文要介绍的CoreBluetooth,专门用于与BLE设备通讯。并且现在很多蓝牙设备都支持4.0,4.0以其低功耗著称,所以一般也叫BLE(Bluetoothlow energy),所以也是在iOS比较推荐的一种开发方法。
Central(中心设备);
Peripheral(外围设备);
advertising(广告);
Services(服务);
Characteristic(特征)
CoreBluetooth介绍

在CoreBluetooth中有两个主要的部分,Central和Peripheral,CBPeripheralManager 作为周边设备。CBCentralManager作为中心设备。所有可用的iOS设备可以作为周边(Peripheral)也可以作为中央(Central),但不可以同时既是周边也是中央。

周边设备(Peripheral)设备是广播设备的数据,中央设备(Central)是管理并且使用这些数据的设备。
也就是说周边(Peripheral)向周围发送广播,告诉周围的中央设备(Central)它(周边(Peripheral)这里有数据,并且说明了能提供的服务和特征值(连接之后才能获取),
其实蓝牙传值相当于网络接口,硬件的service的UUID加上characteristic的UUID,
打一个比喻:service的UUID相当于主地址,characteristic的UUID相当于短链接,短链接必须是主地址的分支,拼在一起的是接口,你和硬件设定的蓝牙传输格式类似于json,双方可识别的数据,因为蓝牙只能支持16进制,而且每次传输只能20个字节,所以要把信息流转成双方可识别的16进制

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容