Я занимаюсь разработкой приложения для управления устройством BLE.Я пытаюсь записать данные в методе didDiscoverCharacteristicsFor
, как показано ниже.
func peripheral(_ peripheral: CBPeripheral, didDiscoverCharacteristicsFor service: CBService, error: Error?) {
if let characteristics = service.characteristics {
for characteristic in characteristics {
if characteristic.uuid == CBUUID(string: Common.PinUUID) {
var varInt = 0
let data = Data.init(bytes: &varInt, count: 1);
peripheral.writeValue(data, for: characteristic, type: .withResponse)
}
}
}
Когда я пытаюсь записать данные в характеристику, появляется ошибка, как показано ниже.
<CBCharacteristic: 0x283b213e0, UUID = 47E9EE30-47E9-11E4-8939-164230D1DF67, properties = 0x8, value = (null), notifying = NO> - Optional("Writing is not permitted.")
Моя характеристикаПишите только тип.Я не знаю, почему это показывает ошибку, как это.
Также, когда я пытаюсь прочитать данные, я звоню, как показано ниже.
if characteristic.uuid == CBUUID(string: Common.TemperatureDataUUID) {
print(characteristic)
peripheral.readValue(for: characteristic)
}
Я получил ошибку, как показано ниже,
<CBCharacteristic: 0x283e77300, UUID = 47E9EE2B-47E9-11E4-8939-164230D1DF67, properties = 0xA, value = (null), notifying = NO> - Optional("Reading is not permitted.")
Как решить, не найдя решения?Пожалуйста, помогите.