iOS: Homekit - Как определить, включена ли услуга Bluetooth и WiFi на устройстве или нет?
Домашнее приложение показывает ниже предупреждение, когда мы пытаемся добавить аксессуар.
Я также использовал фреймворк HomeKit в своем приложении и хочу показать предупреждение, когда пользователь пытается добавить аксессуар.
Какие изменения мне нужно сделать, чтобы отобразить одно и то же предупреждение в приложении?
1 ответ
Для Bluetooth в iOS у вас есть CBPeripheralManager (в CoreBluetooth Framework). Чтобы проверить соединение Bluetooth, вы объявляете свой класс делегатом CBPeripheralManager, а затем создаете локальную переменную:
var myBTManager = CBPeripheralManager(delegate: self, queue: nil, options: nil)
затем ваш класс должен реализовать обратный вызов, чтобы вас заметили, когда ваш Bluetooth включен или отключен. Код ниже извлечен из моего проекта, который предназначен для менеджера Beacon
//BT Manager
func peripheralManagerDidUpdateState(peripheral: CBPeripheralManager!) {
println(__FUNCTION__)
if peripheral.state == CBPeripheralManagerState.PoweredOn {
println("Broadcasting...")
//start broadcasting
myBTManager!.startAdvertising(_broadcastBeaconDict)
} else if peripheral.state == CBPeripheralManagerState.PoweredOff {
println("Stopped")
myBTManager!.stopAdvertising()
} else if peripheral.state == CBPeripheralManagerState.Unsupported {
println("Unsupported")
} else if peripheral.state == CBPeripheralManagerState.Unauthorized {
println("This option is not allowed by your application")
}
}
А для Wifi взгляните на этот Github: https://github.com/ashleymills/Reachability.swift
Источник Ответ: - Обнаружение, если пользователь включил или выключил Wi-Fi или Bluetooth