Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
swift 3-ios:蓝牙外围设备_Ios_Swift_Bluetooth_Bluetooth Lowenergy_Cbperipheral - Fatal编程技术网

swift 3-ios:蓝牙外围设备

swift 3-ios:蓝牙外围设备,ios,swift,bluetooth,bluetooth-lowenergy,cbperipheral,Ios,Swift,Bluetooth,Bluetooth Lowenergy,Cbperipheral,我正在尝试使用iphone通过蓝牙查看外围设备 事实上,我一直在写这段代码 class BlueT: ViewController, CBCentralManagerDelegate, CBPeripheralDelegate{ var centralManager: CBCentralManager! var peripheral: CBPeripheral! let BEAN_NAME = "Az200" let BEAN_SCRATCH_UUID = CBUUID(string: "A

我正在尝试使用iphone通过蓝牙查看外围设备

事实上,我一直在写这段代码

class BlueT: ViewController, CBCentralManagerDelegate, CBPeripheralDelegate{

var centralManager: CBCentralManager!
var peripheral: CBPeripheral!

let BEAN_NAME = "Az200"
let BEAN_SCRATCH_UUID =
CBUUID(string: "A159EA45-A794-27F4-8947-1C0A5E3C70B0")
let BEAN_SERVICE_UUID =
    CBUUID(string: "A159EA45-A794-27F4-8947-1C0A5E3C70B0")

 override func viewDidLoad() {
    super.viewDidLoad()
    centralManager = CBCentralManager(delegate: self, queue: nil)

}


func centralManagerDidUpdateState(_ central: CBCentralManager) {

    if #available(iOS 10.0, *){
        switch (central.state) {
        case CBManagerState.poweredOff:
            print("CBCentralManagerState.PoweredOff")
        case CBManagerState.unauthorized:
            print("CBCentralManagerState.Unauthorized")
            break
        case CBManagerState.unknown:
            print("CBCentralManagerState.Unknown")
            break
        case CBManagerState.poweredOn:
            print("CBCentralManagerState.PoweredOn")
            centralManager.scanForPeripherals(withServices: nil, options: nil)
        case CBManagerState.resetting:
            print("CBCentralManagerState.Resetting")
        case CBManagerState.unsupported:
            print("CBCentralManagerState.Unsupported")
            break
        }}else{
        switch central.state.rawValue{
        case 0:
            print("CBCentralManagerState.Unknown")
            break
        case 1:
            print("CBCentralManagerState.Resetting")
        case 2:
            print("CBCentralManagerState.Unsupported")
            break
        case 3:
            print("This app is not authorised to use Bluetooth low energy")
            break
        case 4:
            print("Bluetooth is currently powered off.")
        case 5:
            print("Bluetooth is currently powered on and available to use.")
            centralManager.scanForPeripherals(withServices: nil, options: nil)

        default:break
        }}}


func centralManager(
    central: CBCentralManager,
    didDiscoverPeripheral peripheral: CBPeripheral,
    advertisementData: [String : AnyObject],
    RSSI: NSNumber) {
    let device = (advertisementData as NSDictionary)
        .object(forKey: CBAdvertisementDataLocalNameKey)
        as? NSString

    if device?.contains(BEAN_NAME) == true {
        self.centralManager.stopScan()

        self.peripheral = peripheral
        self.peripheral.delegate = self
        print("peripheral: \(peripheral)")
               } }
}
所以实际上,输出是 “蓝牙当前已通电,可供使用。” 但是打印(“外围设备:(外围设备)”)没有出现
那么,我该怎么做才能看到我的外设呢?

我有目标c中连接BLE到iphone的完整代码。看看这个问题:外设是广告吗?LightBlue应用程序能看到吗?是的,事实上,在设置->蓝牙时,我看到我的设备已经连接@paulw11。我如何检查此功能是否工作?“self.centralManager.scanForPeripherals(带有服务:nil,选项:nil)”@Paulw11为什么你认为我的代码不能达到didiscoverperipheral的功能?