4

我正在尝试从中心向外围发送响应。该代码两次运行良好。突然didReceiveWriteRequest不叫了。我什至没有做任何更改。外围给出的属性是 CBCharacteristicsPropertyNotify | CBCharacteristicsPropertyWriteWithResponse and CBCharacteristicPropertyWrite. 给定的权限是CBAttributePermissionsWriteable | CBAttributePermissionsReadable. 在中心,我在didDiscoverCharacteristicsForService方法中给出了 setNotifyValue=YES。这就是我尝试从中心写作的方式:

[peripheral writeValue:data forCharacteristic:self.peripheralCharacteristicn type:CBCharacteristicWriteWithResponse];

我在我所做的事情中找不到任何错误。出于某种原因,没有在外围设备调用 didReceiveWriteRequest。请指教。

4

1 回答 1

0

我遇到了同样的问题。您可以尝试几件事:

  1. 从中央,尝试将“写入特征”API 适当地更改为有响应/无响应。

  2. 在外围设备(即您的 iOS 设备)上,尝试使用任一“didReceiveWrite”:

一世。didReceiveWriteRequests

ii. didReceiveWrite

iii. didReceiveWriteRequest - 不要错过名称中的单数“请求”。这个只接收一个 CBATTRequest 对象,而不是在第一个 API 'didReceiveWriteRequests' 的情况下的请求数组

于 2017-09-13T14:24:41.147 回答