2014-03-04 160 views
3

阅读文档,我已经构建了2个应用程序,它们使用BLE连接2个iDevices。 一个设备是Central,另一个设备是Peripheral。 中央正在寻找外围设备,并找到它时,探索其服务和特点,比连接到相关的特点。Core-Bluetooth双向通信

当更新来自于这个特性时,我想用从中央到外围的数据进行响应。

问题是,我必须从中央切换到另一侧的外围设备,反之亦然,为了响应?意思是,如果我想做一个简单的聊天,他们总是要切换? 如果是的话 - 这使得聊天成为问题,因为这两个设备都有可能进入外设并尝试同时发送消息。

因此,如果有一种方法可以进行双向通信,那么如何执行该操作,并且任何有关该教程的链接都将非常棒。感谢名单。

回答

4

BLE通信已经是双向的。

Central - > Peripheral:写出一个特征。

  1. 外设必须具有可写特性。
  2. Central可以通过这种方式发送数据。

中央< - 外围:更新,中央已订阅的特征值。

  1. 外设必须有一个动态的特点,它更新的价值。
  2. 中央认可该特征的通知/指示。
  3. 外围设备更新特征值,该特征值随后将带有更新值的通知发送到中央。

要了解它是如何工作的,请查看BTLE Transfer demo。你应该花一些时间研究它的运作方式。 Core Bluetooth Programming Guide也有很好的例子来获得更深的理解。

+0

我回答了你的问题吗?如果有,请将其标记为答案。如果不是,请让我知道你还想知道什么。 – allprog