のドキュメントにCBMutableDescriptor:initWithType:value:
は、型パラメーターの「特性を識別する 128 ビット UUID」を渡すように記載されています。次に、型パラメーターにはCBUUIDCharacteristicUserDescriptionString
またはのいずれかのみを使用する必要があると述べています。CBUUIDCharacteristicFormatString
最後に、変更可能な特性に記述子を追加する方法はありません。
このパラメーターは、相互に排他的な 2 つのことを行っているようです。一方では、記述子がどの特性に適用されるかを O/S に伝えるために使用され、他方では、記述子のタイプを設定するために使用されます。2 番目の方がより理にかなっていますが、では、記述子を特性にどのように追加するのでしょうか?
特性または の UUID を渡すかどうかに関係なくCBUUIDCharacteristicUserDescriptionString
、iOS は次のようにクラッシュします。
Assertion failure in -[CBMutableDescriptor initWithType:value:], /SourceCache/CoreBluetooth_Sim/CoreBluetooth-59.3/CBDescriptor.m:25
CBMutableDescriptor を作成して CBMutableCharacteristic に追加する正しい方法は何ですか?