Bluetooth LE Client Characteristic Configuration Descriptorの書き込み方法について
iOSにおいて、「Characteristic Configuration Descriptor」に「2(0x02)」を書き込みIndicateを許可する方法について教えていただけないでしょうか。
CBPeripheralクラスの
- (void)writeValue:(NSData )data forDescriptor:(CBDescriptor )descriptor;
を利用したところ、
「setNotifyValue:forCharacteristic: を使うべきです。」
とのエラーが発生しました。
なお、Androidでは以下のコードで実現済みです。
これと同じことをiOSで実現したいと考えております。
BluetoothGattService s =
mBluetoothGatt.getService(UUID.fromString(サービスUUID));
BluetoothGattCharacteristic characteristic2 =
s.getCharacteristic(UUID.fromString(characteristicのUUID));
int charaProp = characteristic2.getProperties();
mBluetoothGatt.setCharacteristicNotification(characteristic2, true);
// Sensor の notification 機能を有効化する
BluetoothGattDescriptor descriptor =
characteristic2.getDescriptor(UUID.fromString(DESCRIPTOR_UUID));
descriptor.setValue(BluetoothGattDescriptor.ENABLE_INDICATION_VALUE);
// 設定した descriptor を書き込む
mBluetoothGatt.writeDescriptor(descriptor);