【发布时间】:2017-01-19 21:42:11
【问题描述】:
所以我正在迁移到 iOS10,但我还需要我的代码在 iOS9 上运行。我正在使用 CoreBluetooth 和 CBCentralManagerDelegate。我可以让我的代码在 iOS10 上运行,但我也需要后备代码才能在 iOS9 上运行。
func centralManagerDidUpdateState(_ central: CBCentralManager) {
if #available(iOS 10.0, *) {
switch central.state{
case CBManagerState.unauthorized:
print("This app is not authorised to use Bluetooth low energy")
case CBManagerState.poweredOff:
print("Bluetooth is currently powered off.")
case CBManagerState.poweredOn:
print("Bluetooth is currently powered on and available to use.")
default:break
}
} else {
// Fallback on earlier versions
switch central.state{
case CBCentralManagerState.unauthorized:
print("This app is not authorised to use Bluetooth low energy")
case CBCentralManagerState.poweredOff:
print("Bluetooth is currently powered off.")
case CBCentralManagerState.poweredOn:
print("Bluetooth is currently powered on and available to use.")
default:break
}
}
}
我得到错误:
Enum case 'unauthorized' is not a member of type 'CBManagerState'
上线:
case CBCentralManagerState.unauthorized:
对于 .poweredOff 和 .poweredOn。
有什么想法可以让它在这两种情况下都能正常工作吗?
【问题讨论】:
-
我试过这个,但我也无法让他们的解决方案起作用
标签: ios swift ios9 core-bluetooth ios10