我已经创建了一个简单的应用程序,我的要求是向外围设备写入描述符以获取Sensor数据。苹果文档中有一种方法writeValue(data:Data, descriptor: CBDescriptor)
,但是当我尝试执行该方法时,却得到了NSException
的说明
“由于未捕获的异常'NSInternalInconsistencyException'而终止应用程序,原因:'客户端特征配置描述符必须使用setNotifyValue:forCharacteristic:'配置。
有人可以告诉我如何编写描述符吗?
答案 0 :(得分:0)
您应该致电WriteValue
,而不是致电SetNofifyValue
。
我正在使用Xamarin,代码如下(对于xcode应该是相同的原理)
void SwitchNotify(CBCharacteristic mychar,bool SwitchOn)
{
mychar.Service.Peripheral.SetNotifyValue(SwitchOn,mychar);
}
我不确定是否可以直接编写描述符,或者为什么苹果决定只允许使用此方法进行通知/指示。 Android和Windows(UWP)都允许直接编写描述符。