我正在开发一个应用程序,我需要与外部设备建立蓝牙连接,并成功连接外部设备。
现在,在下面的CBPeripheralManager委托中,在iOS 10中生成错误并在iOS 9.0中完美运行
func peripheral(peripheral: CBPeripheral, didDiscoverCharacteristicsForService service: CBService, error: NSError?) {
if serviceCharacteristics.keys.contains(service.UUID) {
guard let characteristics = service.characteristics else { return }
peripheral.setNotifyValue(true, forCharacteristic: characteristics[0])
}
我在下面的行中收到错误,
peripheral.setNotifyValue(true, forCharacteristic: characteristics[0])
它说CBPeripheral没有成员setNotifyValue。我不明白。我做了一些解决方法,但没有得到任何帮助。
答案 0 :(得分:2)
您使用的是Swift 3吗? The method signature has changed到setNotifyValue(_:for:)
,即:
peripheral.setNotifyValue(true, for: characteristics[0])
答案 1 :(得分:0)
你有没有迁移到swift 3?新语法使用“for”而不是“forCharacteristic”:
peripheral.setNotifyValue(true, for: characteristics[0])