CBCentralManager iOS10 and iOS9

后端 未结 4 1643
被撕碎了的回忆
被撕碎了的回忆 2021-01-04 21:01

So I\'m migrating to iOS10 but I also need my code to run on iOS9. I\'m using CoreBluetooth and CBCentralManagerDelegate. I can get my code to work for iOS10 however I need

4条回答
  •  甜味超标
    2021-01-04 21:30

    func centralManagerDidUpdateState(central: CBCentralManager) {

        if #available(iOS 10.0, *)
        {
            switch (central.state) {
    
            case CBManagerState.PoweredOff:
                print("CBCentralManagerState.PoweredOff")
    
            case CBManagerState.Unauthorized:
                // Indicate to user that the iOS device does not support BLE.
                print("CBCentralManagerState.Unauthorized")
                break
    
            case CBManagerState.Unknown:
                // Wait for another event
                print("CBCentralManagerState.Unknown")
                break
    
            case CBManagerState.PoweredOn:
                print("CBCentralManagerState.PoweredOn")
    
                self.centralManager!.scanForPeripheralsWithServices([CBUUID(string:TRANSFER_UUID)], options:[CBCentralManagerScanOptionAllowDuplicatesKey: false])
    
            case CBManagerState.Resetting:
                print("CBCentralManagerState.Resetting")
    
            case CBManagerState.Unsupported:
                print("CBCentralManagerState.Unsupported")
                break
            }
        }
        else
        {
    
           switch central.state.rawValue
           {
            case 0: // CBCentralManagerState.Unknown
                print("CBCentralManagerState.Unknown")
            break
    
            case 1: // CBCentralManagerState.Resetting
            print("CBCentralManagerState.Resetting")
    
    
            case 2:// CBCentralManagerState.Unsupported
                print("CBCentralManagerState.Unsupported")
            break
    
            case 3: // CBCentralManagerState.unauthorized
                print("This app is not authorised to use Bluetooth low energy")
            break
    
            case 4: // CBCentralManagerState.poweredOff:
                print("Bluetooth is currently powered off.")
    
            case 5: //CBCentralManagerState.poweredOn:
                self.centralManager!.scanForPeripheralsWithServices([CBUUID(string:TRANSFER_UUID)], options:[CBCentralManagerScanOptionAllowDuplicatesKey: false])
                print("Bluetooth is currently powered on and available to use.")
    
            default:break
            }
    
        }
    
    }
    

提交回复
热议问题