我希望用swift在我的应用程序中包含蓝牙功能。我想列出所有附近/可发现的外围设备,包括那些已经配对的设备。
我应该使用哪种方法来列出已配对的设备。我正在使用CoreBlutooth框架来实现蓝牙可用性检查。如果蓝牙正常工作,我想列出已配对的设备。如果可能,请提供从列出的已配对设备直接连接设备的方法。
func startUpCentralManager() {
println("Initializing central manager")
centralManager = CBCentralManager(delegate: self, queue: nil)
}
func centralManagerDidUpdateState(central: CBCentralManager!) {
println("\(__LINE__) \(__FUNCTION__)")
println("checking state")
if central.state != .PoweredOn {
// In a real app, you'd deal with all the states correctly
return
}
central.scanForPeripheralsWithServices(nil,options:nil)
}
//这个方法没有触发
func centralManager(central: CBCentralManager!, didDiscoverPeripheral peripheral: CBPeripheral!, advertisementData: [NSObject : AnyObject]!, RSSI: NSNumber!) {
var localname: NSString = advertisementData[CBAdvertisementDataLocalNameKey]! as NSString
println("Discovered\(peripheral.name)")
if localname != " "
{
centralManager!.stopScan()
//self.peripheral = peripheral
peripheral.delegate = self
centralManager!.connectPeripheral(peripheral, options: nil)
}
}
如果不需要显示附近的外设,是否需要这些方法?如果不需要,则需要实现哪些方法和代码?
提前感谢。
func centralManager(central: CBCentralManager!, didDiscoverPeripheral peripheral: CBPeripheral!, advertisementData: [NSObject : AnyObject]!, RSSI: NSNumber!) { var localname: NSString = advertisementData[CBAdvertisementDataLocalNameKey]! as NSString println("Discovered\(peripheral.name)") }
我已经在iPhone和iPad上运行了该应用程序,但该方法尚未被调用。我认为代码有些问题。 - SARATH SASI