2014-09-04 879 views
1

在iOS7.1.1,以下BLE操作成功 - 它假设我有一个BLE连接设置等..IOS BLE - 写而不响应”属性 - 忽略响应少写

[[self peripheral]writeValue:dataToWrite forCharacteristic:nextCharacteristic type:CBCharacteristicWriteWithResponse]; 

但如果我切换“类型”来CBCharacteristicWriteWithoutResponse,我得到以下警告和外围没有收到命令:(

​​

错误:

CoreBluetooth[WARNING] Characteristic <CBCharacteristic: 0x178081f90 UUID = 249C2001-00D7-4D91-AC75-22D57AE2FFB8, Value = (null), Properties = 0x28, Notifying = YES, Broadcasting = NO> does not specify the "Write Without Response" property - ignoring response-less write** 

任何线索赞赏!

回答

5

当BLE外设通告特征时,广告包括这些特征的属性。这些包括哪些操作在该特性上受支持 - 读取,通知,写入没有响应和写入响应。

在这种情况下,它似乎特点是支持与写响应,但不能写无反应,所以当你尝试写不响应你得到警告和写入操作当场回答没有完成

+0

完美 - 在ios上执行此检查,但在某些平台上,BLE实施不执行此检查,因此它在特征中正确的标志正常工作。 – user1813603 2014-09-06 02:17:32

+0

忘了提及需要进行固件更改才能解决问题...... Thx Paul :) – user1813603 2014-09-06 02:24:28