阅读文档,我已经构建了两个使用BLE连接2个iDevices的应用程序 . 一个设备是Central,另一个是Peripheral . 中央正在寻找外围设备,当找到它时,探索其服务和特性,而不是连接相关的特性 .
当更新来自该特性时,我想用来自中心到外围设备的数据进行响应 .
问题是,我是否必须在一侧从中央切换到外围,而在另一侧则反之亦然,以便做出响应?意思是,如果我想进行简单的聊天,他们总是要切换?如果是 - 这使得聊天成为问题,因为两个设备都有可能转到外围设备并且正在尝试同时发送消息 .
因此,如果有一种方法可以进行双向通信,那么如何进行双向通信,以及任何有关该教程的链接都会很棒 . 感谢名单 .
1 回答
BLE通信已经是双向的 .
Central -> Peripheral :写一个特征 .
外围设备必须具有可写特性 .
中央可以通过这种方式发送数据 .
Central <- Peripheral :更新中央已订阅的特征值 .
外围设备必须具有动态特性才能更新其值 .
中央订阅有关该特征的通知/指示 .
外围设备更新特征值,后者又将更新后的值发送给中心 .
要了解它是如何工作的,请查看BTLE Transfer demo . 你应该花一些时间研究它的运作方式 . Core Bluetooth Programming Guide也有很好的例子来加深理解 .