問題
CoreBluetoothでPeripheral側のアプリを作成しています。
アドバタイズ情報を以下のように設定すると一度はbleTestという名前でスキャンすることができるのですが、一度コネクトしてしまうと二度目以降デバイスに登録されている端末名が表示されるようになってしまいます。
設定 -> Bluetoothからペアリングの解除を行えばまたコード上で指定した名前をスキャンすることができるのですが、毎回削除するのは面倒です。iPhoneのデバイス名変更は行いたくありません。
ペアリングを行わないコネクトの方法はないでしょうか?
コード
Swift
1func peripheralManager(_ peripheral: CBPeripheralManager, didAdd service: CBService, error: Error?) { 2 if error != nil { 3 print("Service Add Failed...") 4 return 5 } 6 print("Service Add Success!") 7 8 if (self.manager.isAdvertising == false) { 9 10 let advertisementData: [String : Any] = [CBAdvertisementDataLocalNameKey: "bleTest", CBAdvertisementDataServiceUUIDsKey: [peripheralServiceUUID]] 11 12 manager.startAdvertising(advertisementData) 13 } 14 }
あなたの回答
tips
プレビュー