构建Swift HealthKit iPhone心率监测应用
1. 蓝牙低功耗(BLE)设备基础
在蓝牙低功耗(BLE)通信中,外设主要通过广告(Advertising)来宣告自身的存在。广告数据包不仅能表明外设的存在,还可包含一些数据,如外设名称,甚至与外设采集数据相关的额外信息。以心率监测应用为例,广告数据包会提供每分钟心跳信息。中央设备会扫描这些广告数据包,识别相关外设,并连接到单个设备以获取更多信息。
外设的数据结构方面,由于广告数据包容量小,无法容纳大量数据,中央设备若要获取更多数据,需连接到外设。连接后,中央设备需选择感兴趣的数据。在BLE中,数据以服务(Service)和特征(Characteristic)的形式组织:
- 服务 :是描述设备特定功能或特性的数据集合及相关行为。一个设备可拥有多个服务,例如心率监测器通过其心率传感器暴露心率数据就是一个典型例子。
- 特征 :为外设服务提供额外细节。一个服务可包含多个特征,如心率服务可能包含描述心率传感器预期身体位置的特征,以及传输心率测量数据的特征。
外设由 CBPeripheral 对象表示,与特定外设相关的服务由 CBService 对象表示,而外设服务的特征由 CBCharacteristic 对象表示,这些对象被定义为包含单个逻辑值的属性类型。每个创建的服务和特征都必须由通用唯一标识符(UUID)标识,UUID可以是16位或128位值,在构建客户端 - 服务器(中央 - 外设)应用时,需要创建自己的128位UUID,并确保这些
超级会员免费看
订阅专栏 解锁全文
17

被折叠的 条评论
为什么被折叠?



