CBCentralManagerDelegate
Наследование
Не применимый
Оператор импорта
Swift
import CoreBluetooth
Objective C
@import CoreBluetooth;
Доступность
Доступный в iOS 5.0 и позже.
CBCentralManagerDelegate протокол определяет методы что делегат a CBCentralManager объект должен принять. Дополнительные методы протокола позволяют делегату контролировать открытие, связь и извлечение периферийных устройств. Когда состояние центрального менеджера обновляется, единственный требуемый метод протокола указывает доступность центрального менеджера и вызывается.
-
Вызванный, когда соединение успешно создается с периферийным устройством.
Объявление
Swift
optional func centralManager(_central: CBCentralManager!, didConnectPeripheralperipheral: CBPeripheral!)Objective C
- (void)centralManager:(CBCentralManager *)centraldidConnectPeripheral:(CBPeripheral *)peripheralПараметры
centralЦентральный менеджер, предоставляющий эту информацию.
peripheralПериферийное устройство, подключенное к системе.
Обсуждение
Этот метод вызывается когда вызов к
connectPeripheral:options:успешно. Вы обычно реализуете этот метод, чтобы установить делегата периферийного устройства и обнаружить его службы.Оператор импорта
Objective C
@import CoreBluetooth;Swift
import CoreBluetoothДоступность
Доступный в iOS 5.0 и позже.
-
Вызванный, когда разъединяется существующее соединение с периферийным устройством.
Объявление
Swift
optional func centralManager(_central: CBCentralManager!, didDisconnectPeripheralperipheral: CBPeripheral!, errorerror: NSError!)Objective C
- (void)centralManager:(CBCentralManager *)centraldidDisconnectPeripheral:(CBPeripheral *)peripheralerror:(NSError *)errorПараметры
centralЦентральный менеджер, предоставляющий эту информацию.
peripheralРазъединенное периферийное устройство.
errorЕсли ошибка произошла, причина отказа.
Обсуждение
Когда периферийное устройство соединилось через, этот метод вызывается
connectPeripheral:options:метод разъединяется. Если разъединение не инициировалосьcancelPeripheralConnection:, причина детализирована вerror. После того, как этот метод вызывают, больше методов не вызывается на периферийное устройствоCBPeripheralDelegateобъект.Обратите внимание на то, что, когда периферийное устройство разъединяется, все его службы, характеристики, и характерные дескрипторы лишены законной силы.
Оператор импорта
Objective C
@import CoreBluetooth;Swift
import CoreBluetoothДоступность
Доступный в iOS 5.0 и позже.
-
centralManager (_: didFailToConnectPeripheral:error:) - centralManager:didFailToConnectPeripheral:error:Вызванный, когда центральному менеджеру не удается создать соединение с периферийным устройством.
Объявление
Swift
optional func centralManager(_central: CBCentralManager!, didFailToConnectPeripheralperipheral: CBPeripheral!, errorerror: NSError!)Objective C
- (void)centralManager:(CBCentralManager *)centraldidFailToConnectPeripheral:(CBPeripheral *)peripheralerror:(NSError *)errorПараметры
centralЦентральный менеджер, предоставляющий эту информацию.
peripheralПериферийное устройство, которому не удалось соединиться.
errorПричина отказа.
Обсуждение
Когда соединение инициировало через, этот метод вызывается
connectPeripheral:options:методу не удается завершиться. Поскольку попытки подключения убирают не время, неработающее соединение обычно указывает переходную проблему, когда можно попытаться соединиться с периферийным устройством снова.Оператор импорта
Objective C
@import CoreBluetooth;Swift
import CoreBluetoothДоступность
Доступный в iOS 5.0 и позже.
-
centralManager (_: didDiscoverPeripheral:advertisementData:RSSI:) - centralManager:didDiscoverPeripheral:advertisementData:RSSI:Вызванный, когда центральный менеджер обнаруживает периферийное устройство при сканировании.
Объявление
Swift
optional func centralManager(_central: CBCentralManager!, didDiscoverPeripheralperipheral: CBPeripheral!, advertisementDataadvertisementData: [NSObject : AnyObject]!, RSSIRSSI: NSNumber!)Objective C
- (void)centralManager:(CBCentralManager *)centraldidDiscoverPeripheral:(CBPeripheral *)peripheraladvertisementData:(NSDictionary *)advertisementDataRSSI:(NSNumber *)RSSIПараметры
centralЦентральный менеджер, обеспечивающий обновление.
peripheralОбнаруженное периферийное устройство.
advertisementDataСловарь, содержащий любые данные рекламы.
RSSIТекущий полученный индикатор мощности сигнала (RSSI) периферийного устройства, в децибелах.
Обсуждение
К данным рекламы можно получить доступ через ключи, перечисленные в Ключах Поиска данных Рекламы. Необходимо сохранить локальную копию периферийного устройства, если какая-либо команда должна быть выполнена на нем. В вариантах использования, где это целесообразно для Вашего приложения автоматически соединяться с периферийным устройством, расположенным в определенном диапазоне, можно использовать данные RSSI для определения близости обнаруженного периферийного устройства.
Оператор импорта
Objective C
@import CoreBluetooth;Swift
import CoreBluetoothДоступность
Доступный в iOS 5.0 и позже.
-
centralManager (_: didRetrieveConnectedPeripherals:) - centralManager:didRetrieveConnectedPeripherals:Вызванный, когда центральный менеджер получает список периферийных устройств, в настоящее время подключаемых к системе.
Объявление
Swift
optional func centralManager(_central: CBCentralManager!, didRetrieveConnectedPeripheralsperipherals: [AnyObject]!)Objective C
- (void)centralManager:(CBCentralManager *)centraldidRetrieveConnectedPeripherals:(NSArray *)peripheralsПараметры
centralЦентральный менеджер, предоставляющий эту информацию.
peripheralsМассив всех периферийных устройств в настоящее время соединялся с системой.
Обсуждение
Этот метод возвращает результат a
retrieveConnectedPeripheralsвызвать. Так как массив в настоящее время подключенных периферийных устройств может включать подключенных к системе другими приложениями, Вы обычно реализуете этот метод, чтобы повторно подключить периферийные устройства, которыми интересуется Ваше приложение.Оператор импорта
Objective C
@import CoreBluetooth;Swift
import CoreBluetoothДоступность
Доступный в iOS 5.0 и позже.
-
Вызванный, когда центральный менеджер получает список известных периферийных устройств.
Объявление
Swift
optional func centralManager(_central: CBCentralManager!, didRetrievePeripheralsperipherals: [AnyObject]!)Objective C
- (void)centralManager:(CBCentralManager *)centraldidRetrievePeripherals:(NSArray *)peripheralsПараметры
centralЦентральный менеджер, предоставляющий эту информацию.
peripheralsМассив периферийных устройств, в настоящее время известных центральному менеджеру.
Обсуждение
Этот метод возвращает результат вызова к
retrievePeripherals:с массивом периферийных устройств, которые центральный менеджер смог соответствовать к предоставленным универсально уникальным идентификаторам (UUIDs). Вы обычно реализуете этот метод, чтобы повторно соединиться с известным периферийным устройством.Оператор импорта
Objective C
@import CoreBluetooth;Swift
import CoreBluetoothДоступность
Доступный в iOS 5.0 и позже.
-
Вызванный, когда обновляется состояние центрального менеджера. (требуемый)
Объявление
Swift
func centralManagerDidUpdateState(_central: CBCentralManager!)Objective C
- (void)centralManagerDidUpdateState:(CBCentralManager *)centralПараметры
centralЦентральный менеджер, состояние которого изменилось.
Обсуждение
Вы реализуете этот требуемый метод гарантировать, что низкая энергия Bluetooth поддерживается и доступна для использования на центральном устройстве. Необходимо дать команды центральному менеджеру только, когда состояние центрального менеджера включается, как обозначено
CBCentralManagerStatePoweredOnпостоянный. Состояние со значением ниже, чемCBCentralManagerStatePoweredOnподразумевает, что сканирование остановилось и что были разъединены любые подключенные периферийные устройства. Если состояние перемещается нижеCBCentralManagerStatePoweredOff, всеCBPeripheralобъекты, полученные от этого центрального менеджера, становятся недопустимыми и должны быть получены или обнаружены снова. Для полного списка и обсуждения возможных значений, представляющих состояние центрального менеджера, посмотритеCBCentralManagerStateперечисление в Ссылке класса CBCentralManager.Оператор импорта
Objective C
@import CoreBluetooth;Swift
import CoreBluetoothДоступность
Доступный в iOS 5.0 и позже.
-
Вызванный, когда центральный менеджер собирается быть восстановленным системой.
Объявление
Swift
optional func centralManager(_central: CBCentralManager!, willRestoreStatedict: [NSObject : AnyObject]!)Objective C
- (void)centralManager:(CBCentralManager *)centralwillRestoreState:(NSDictionary *)dictПараметры
centralЦентральный менеджер, предоставляющий эту информацию.
dictБыл завершен словарь, содержащий информацию о центральном менеджере, сохраненном системой в это время приложение. Для доступных ключей к этому словарю посмотрите Центральные Опции Восстановления состояния менеджера.
Обсуждение
Для приложений, выбирающих в к функции сохранения и восстановления состояния Ядра Bluetooth, это - первый метод, вызванный, когда Ваше приложение повторно запускается в фон для выполнения некоторой связанной с Bluetooth задачи. Используйте этот метод для синхронизации состояния приложения с состоянием системы Bluetooth.
Оператор импорта
Objective C
@import CoreBluetooth;Swift
import CoreBluetoothДоступность
Доступный в iOS 7.0 и позже.
-
Ключи раньше передавали опции
initWithDelegate:queue:options:метод.Объявление
Swift
let CBCentralManagerRestoredStatePeripheralsKey: String let CBCentralManagerRestoredStateScanServicesKey: String let CBCentralManagerRestoredStateScanOptionsKey: StringObjective C
NSString *const CBCentralManagerRestoredStatePeripheralsKey; NSString *const CBCentralManagerRestoredStateScanServicesKey; NSString *const CBCentralManagerRestoredStateScanOptionsKey;Константы
-
CBCentralManagerRestoredStatePeripheralsKeyМассив (экземпляр
NSArray) изCBPeripheralобъекты, который содержит все периферийные устройства, подключенные к центральному менеджеру (или имел ожидание соединения) в это время приложение были завершены системой.Когда возможно, вся информация о периферийном устройстве восстанавливается, включая любые обнаруженные службы, характеристики, характерные дескрипторы и характерные состояния уведомления.
Доступный в iOS 7.0 и позже.
-
CBCentralManagerRestoredStateScanServicesKeyМассив (экземпляр
NSArray) из службы UUIDs (представленныйCBUUIDобъекты), который содержит все службы центральный менеджер, сканировал для того, в то время, когда приложение было завершено системой.Доступный в iOS 7.0 и позже.
-
CBCentralManagerRestoredStateScanOptionsKeyСловарь (экземпляр
NSDictionary) это содержит все периферийные опции сканирования, использовавшиеся центральным менеджером в то время, когда приложение было завершено системой.Доступный в iOS 7.0 и позже.
-
-
Ключи для указания в
advertisementDataсловарь.Объявление
Swift
let CBAdvertisementDataLocalNameKey: String let CBAdvertisementDataManufacturerDataKey: String let CBAdvertisementDataServiceDataKey: String let CBAdvertisementDataServiceUUIDsKey: String let CBAdvertisementDataOverflowServiceUUIDsKey: String let CBAdvertisementDataTxPowerLevelKey: String let CBAdvertisementDataIsConnectable: String let CBAdvertisementDataSolicitedServiceUUIDsKey: StringObjective C
NSString *const CBAdvertisementDataLocalNameKey; NSString *const CBAdvertisementDataManufacturerDataKey; NSString *const CBAdvertisementDataServiceDataKey; NSString *const CBAdvertisementDataServiceUUIDsKey; NSString *const CBAdvertisementDataOverflowServiceUUIDsKey; NSString *const CBAdvertisementDataTxPowerLevelKey; NSString *const CBAdvertisementDataIsConnectable; NSString *const CBAdvertisementDataSolicitedServiceUUIDsKey;Константы
-
CBAdvertisementDataLocalNameKeyСтрока (экземпляр
NSString) содержа локальное имя периферийного устройства.Доступный в iOS 5.0 и позже.
-
CBAdvertisementDataManufacturerDataKeyA
NSDataобъект, содержащий данные производителя периферийного устройства.Доступный в iOS 5.0 и позже.
-
CBAdvertisementDataServiceDataKeyСловарь, содержащий специфичные для службы данные рекламы.
Ключи
CBUUIDобъекты, представляяCBServiceUUIDs. ЗначенияNSDataобъекты, представляя специфичные для службы данные.Доступный в iOS 5.0 и позже.
-
CBAdvertisementDataServiceUUIDsKeyМассив службы UUIDs.
Доступный в iOS 5.0 и позже.
-
CBAdvertisementDataOverflowServiceUUIDsKeyМассив один или больше
CBUUIDобъекты, представляяCBServiceUUIDs, найденные в области «переполнения» данных рекламы.Вследствие природы данных, хранивших в этой области, UUIDs, перечисленные здесь, являются «максимальными усилиями» и могут не всегда быть точными. Для получения дополнительной информации об области переполнения данных рекламы, посмотрите
startAdvertising:метод в Ссылке класса CBPeripheralManager.Доступный в iOS 6.0 и позже.
-
CBAdvertisementDataTxPowerLevelKeyЧисло (экземпляр
NSNumber) содержа мощность передачи периферийного устройства.Если вещательная компания (периферийное устройство) обеспечивает свой уровень мощности Tx в его рекламном пакете, этот ключ и значение доступны. Используя значение RSSI и уровень мощности Tx, возможно вычислить потерю тракта.
Доступный в iOS 5.0 и позже.
-
CBAdvertisementDataIsConnectableБулево значение, указывающее, является ли рекламный тип события соединяемым.
Значение для этого ключа
NSNumberобъект. Можно использовать это значение, чтобы определить, является ли периферийное устройство соединяемым в определенный момент.Доступный в iOS 7.0 и позже.
-
CBAdvertisementDataSolicitedServiceUUIDsKeyДоступный в iOS 7.0 и позже.
-
