如果我通过蓝牙低能量发送数据,我可以知道转移的状态吗?

时间:2013-02-21 10:13:24

标签: ios core-bluetooth bluetooth-lowenergy

我正在尝试通过Apple提供的sample了解更多信息。

此示例可以将文本从iOS设备发送到另一个设备。

有一种方法叫做:

  

- (BOOL)updateValue:(NSData *)forCharacteristic:(CBMutableCharacteristic *)特征onSubscribedCentrals:(NSArray *)centrals;

当此示例通过此方法发送文本时,它将返回BOOL以让您知道是否成功。

这很简单明了。

但我怀疑:

这是由BLE提供的吗?

或者是因为CoreBluetooth API?

换句话说,如果我从其他BLE设备(而不是iOS设备)接收数据。

该设备是否知道我已收到数据?

1 个答案:

答案 0 :(得分:3)

在BLE中,当您的中央设备(此处为iOS设备,假设为主设备,以及客户端)想要将数据发送到外围设备(假设为从设备和服务器)时,它有几个选项可以执行此操作:

(1)写入特征值

(2)将命令写入特征值

不同之处在于(1)具有来自外围设备的响应。 (2)没有那个。 (2)优于(1)的优点是(2)可以盲目地发送多个数据,而(1)必须等到对先前写入的响应才能发送下一个数据。

同样,如果您的外围设备(作为服务器)想要向iOS设备发送一些数据,您可以指示(通过确认)或通知(不使用确认)。

希望这有帮助。