WatchOS: Bluetooth CBCentralManager всегда находится в «неподдерживаемом» состоянии в автономном приложении Apple Watch - PullRequest
1 голос
/ 06 ноября 2019

все! В качестве небольшого эксперимента я пытаюсь создать автономное приложение WatchOS 6+ с поддержкой Bluetooth. Я начинаю с простого кода, который я использую много раз:

final class MyBluetoothInterface: NSObject, CBCentralManagerDelegate, CBPeripheralDelegate { 
    private var _centralManager: CBCentralManager!

    override init() {
        self._centralManager = CBCentralManager(delegate: nil, queue: nil)
        super.init()
        self._centralManager.delegate = self
    }

    func centralManagerDidUpdateState(_ central: CBCentralManager) {
        scanServices(central)
    }

    func scanServices(_ central: CBCentralManager) {
        print("Central is not powered on! It's in '\(central.state)' state.")
        guard central.state == .poweredOn else { return }
        central.scanForPeripherals(withServices: nil, options: nil)
    }

}

Но CBCentralManager всегда «не поддерживается». Согласно документу Apple «неподдерживаемое» состояние означает, что устройство не поддерживает BLE. Я использую Apple Watch Series 1 + WatchOS 6.1. И как я знаю Series 1 поддерживает BLE. Может ли кто-нибудь помочь мне, пожалуйста?

...