在iOS 11中,用户可以从控制中心和设置中禁用蓝牙。如果在控制中心禁用蓝牙,则信标测距仍然可以工作。我试图在中央经理中使用didUpdateState
。当蓝牙以任何一种方式禁用时,它只给我CBManagerStatePoweredOff
。有没有办法找出蓝牙是否能够测距?我也试过isRangingAvailable
。它总是在我的设备上返回true。
在CoreLocation委托中,实现以下方法:
func locationManager(_ manager: CLLocationManager,
rangingBeaconsDidFailFor region: CLBeaconRegion,
withError error: Error) {
// Ranging is not available. Do something here.
}