iOS アプリ (ペリフェラル) から OSX アプリ (中央) にメッセージを送信することに成功しました。
セントラルで特性値を更新してペリフェラルから読み取ろうとすると、問題が発生します。
CBCharacteristicProperties を Notify 以外に変更すると、セントラルは「書き込みは許可されていません」というエラーでキャラクタリスティックへのサブスクライブに失敗します。
self.transferCharacteristic = CBMutableCharacteristic(type: CBUUID.UUIDWithString(TRANSFER_CHARACTERISTIC_UUID), properties: CBCharacteristicProperties.Read, value: nil, permissions: CBAttributePermissions.Writeable)
私の理解では、Central から Peripheral への書き込みを行うには、Peripheral で上記の行とこのイベントを組み合わせて使用する必要があります。
func peripheralManager(peripheral: CBPeripheralManager!, didReceiveWriteRequests requests: [AnyObject]!) {}
これを Central で使用して、特性の値を更新します。
self.discoveredPeripheral?.writeValue(passwordData, forCharacteristic: self.characteristicSubscribed, type: CBCharacteristicWriteType.WithoutResponse)
私が間違っていることを教えてください。私がやろうとしていることを行う方法を示すサンプルプロジェクトは、高く評価されます。
ありがとう