一驶兜、無(wú)法掃描到藍(lán)牙舀凛,但其他APP如LightBlue能搜到
1俊扳、方法
func central.scanForPeripherals(withServices: nil, options: nil)
要寫(xiě)在
func centralManagerDidUpdateState(_ central: CBCentralManager)
中的
case .poweredOn:
下,不能寫(xiě)在其他地方猛遍。
2馋记、掃描到設(shè)備的代理方法改變了,swift2.0的代理方法是
func centralManager(central: CBCentralManager, didDiscoverPeripheral peripheral: CBPeripheral, advertisementData: [String : AnyObject], RSSI: NSNumber)
現(xiàn)在swift3.0的代理方法是
func centralManager(_ central: CBCentralManager, didDiscover peripheral: CBPeripheral, advertisementData: [String : Any], rssi RSSI: NSNumber)
如果不把方法改過(guò)來(lái)懊烤,就始終不能獲取到掃描到設(shè)備的代理梯醒。
二、能掃描到設(shè)備腌紧,無(wú)法連接設(shè)備
可以掃描到藍(lán)牙設(shè)備茸习,能夠走上面的didDiscover代理,但是當(dāng)我連接到指定的藍(lán)牙設(shè)備的時(shí)候central.connect(peripheral, options: nil)壁肋,卻始終無(wú)法連接号胚,藍(lán)牙連接成功和失敗的接口都沒(méi)有回調(diào)。
解決方法:
peripherals.append(peripheral)
定義一個(gè)數(shù)組浸遗,把CBPeripheral存儲(chǔ)到數(shù)組中才可以掃描到此設(shè)備猫胁。