Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Ссылка IOBluetoothUserLib.h

Опции
Развертывание Target:

На этой странице
Язык:

Ссылка IOBluetoothUserLib.h

Открытые интерфейсы для реализации Apple технологии Bluetooth.

Существует сопроводительный заголовок к этому, «Bluetooth.h», содержащему все специфичные для технологии определения типов и информацию. Этот заголовок полагается в большой степени на него.

Включенные заголовки

  • <IOKit/IOKitLib.h>

  • <CoreFoundation/CFMachPort.h>

  • <IOBluetooth/Bluetooth.h>

  • <Foundation/Foundation.h>

Функции

  • Создает персистентный драйвер аудио, который направит аудиоданные к/от указанному устройству.

    Объявление

    Objective C

    IOReturn IOBluetoothAddSCOAudioDevice ( IOBluetoothDeviceRef device, CFDictionaryRef configDict );

    Параметры

    device

    Парное аудиоустройство Bluetooth

    configDict

    Словарь конфигурации, содержащий описание регулировок звука, чтобы быть присоединенными к драйверу. Передача NULL приведет к средствам управления по умолчанию

    Возвращаемое значение

    Возвраты kIOReturnSuccess, если драйвер аудио успешно создавался, ошибка, если аппаратные средства не поддерживают SCO или устройство, не соединяются.

    Обсуждение

    Bluetooth-устройство должно быть соединено, прежде чем оно сможет быть добавлено. Аппаратные средства Bluetooth должны также поддерживать соединения SCO для устройств, которые будут добавлены.

    Когда клиент попытается использовать драйвер аудио, он автоматически откроет основополосное соединение и соединение SCO при необходимости. Как только они открыты, это направит аудиоданные к/от аудиосистеме. Драйвер аудио будет продолжать существовать (даже через перезагрузки), пока не вызовут IOBluetoothRemoveAudioDevice.

    В настоящее время единственная распознанная запись в configDict является «IOAudioControls». Та запись будет NSArray объектов NSDictionary, где каждый словарь представляет единственную регулировку звука. Следующее является описанием обязательных и дополнительных записей в каждом словаре управления.

    Обязательные записи:

    kIOAudioControlTypeKey = Четыре символьных кода, представляющие тип управления (см. IOAudioTypes.h), Возможные значения: kIOAudioControlTypeLevel kIOAudioControlTypeToggle kIOAudioControlTypeSelector kIOAudioControlSubTypeKey = Четыре символьных кода, представляющие подтип управления. Значение зависит от типа управления. Следующее является общими подтипами для каждого типа управления: kIOAudioControlTypeLevel: kIOAudioLevelControlSubTypeVolume kIOAudioControlTypeToggle: kIOAudioToggleControlSubTypeMute kIOAudioControlTypeSelector: kIOAudioSelectorControlSubTypeOutput kIOAudioSelectorControlSubTypeInput kIOAudioControlUsageKey = Четыре символьных кода, представляющие использование управления (т.е. какая часть I/O объединяет влияние управления в цепочку - ввод, выведите, передача - через...), (см. IOAudioTypes.h), Возможные значения: kIOAudioControlUsageOutput kIOAudioControlUsageInput kIOAudioControlUsagePassThru kIOAudioControlChannelIDKey = идентификатор канала для канала (ов) акты о контроле на (см. IOAudioControl.h и IOAudioTypes.h для большего количества информации), kIOAudioControlChannelNameKey = имя для канала (см. IOAudioControl.h и IOAudioDefines.h для большего количества информации), kIOAudioControlValueKey = Начальное значение управления - как NSNumber

    Дополнительные записи: kIOAudioControlIDKey = Дополнительное определенное разработчиками поле ID раньше однозначно определял каждое управление.

    Специфичные для регулятора уровня записи (см. IOAudioDefines.h), kIOAudioLevelControlMinValueKey = значение Мин для диапазона для регулятора уровня kIOAudioLevelControlMaxValueKey = Макс. значение для диапазона для регулятора уровня kIOAudioLevelControlMinDBKey = значение Мин в дб для диапазона для регулятора уровня. Значение является фиксированной точкой 16,16 чисел, представленных как целое число в NSNumber. kIOAudioLevelControlMaxDBKey = Макс. значение в дб для диапазона для регулятора уровня. Значение является фиксированной точкой 16,16 чисел, представленных как целое число в NSNumber.

    Для более подробного описания этих атрибутов и как IOAudioControls работают, посмотрите headerdoc для IOAudioControl, IOAudioLevelControl, IOAudioToggleControl и IOAudioSelectorControl в Kernel.framework.

    Оператор импорта

    Objective C

    @import IOBluetooth;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

  • Добавляет служба к локальному серверу SDP.

    Объявление

    Objective C

    IOReturn IOBluetoothAddServiceDict ( CFDictionaryRef serviceDict, IOBluetoothSDPServiceRecordRef *outServiceRecord );

    Параметры

    serviceDict

    Словарь, содержащий атрибуты для новой службы

    outServiceRecord

    Указатель на недавно создаваемый IOBluetoothSDPServiceRecordRef. Присвоенный идентификатор канала RFCOMM может быть получен из служебной книжки (как может другие присвоенные параметры.) Если kIOReturnSuccess возвращается, это значение только установлено. Вызывающая сторона ответственна за выпуск IOBluetoothSDPServiceRecordRef путем вызова IOBluetoothObjectRelease (), когда сделано.

    Возвращаемое значение

    Возвраты kIOReturnSuccess в случае успеха.

    Обсуждение

    Каждая запись в словаре, представляющем службу, содержит отдельные атрибуты. Каждый атрибут в dict включается строкой, которая должна начаться с шестнадцатеричного числа, представляющего атрибут ID. Строка ключа может содержать дополнительные символы при желании, пока они следуют за пространством после шестнадцатеричной строки ID. Значение атрибута должно следовать за форматом словаря, описанным IOBluetoothSDPDataElement. Этот формат словаря позволяет службе dict быть созданной как plist файл и затем загруженной в систему, а не накопленной в коде. Посмотрите пример кода для примера того, как может быть сделан.

    Если дескриптор служебной книжки, L2CAP PSM или идентификатор канала RFCOMM, указанный в словаре, будут использоваться, то альтернативный будет присвоен.

    В дополнение к атрибутам, представляющим саму службу, дополнительные атрибуты могут быть указаны, которые управляют локальным поведением службы. Для указания этих локальных атрибутов дополнительное свойство назвало, «LocalAttributes» может быть добавлен к корню службы dict. Значение этого свойства должно быть словарем, содержащим отдельные локальные атрибуты.

    В настоящее время только два локальных атрибута поддерживаются: «Персистентный» и «TargetApplication».

    «Персистентный» локальный атрибут должен быть или булевской переменной или представлением числа, должна ли служба быть персистентной. Персистентная служба будет сохранена прочь и восстановила любое время, аппаратные средства Bluetooth присутствуют. Это сохранится через перезагрузки и может только быть удалено путем вызова IOBluetoothRemoveServiceWithRecordHandle (). Этот атрибут является дополнительным. По умолчанию, если никакое «Персистентное» локальное свойство не будет присутствовать, то служба будет только существовать временно. Это будет удалено также, когда IOBluetoothRemoveServiceWithRecordHandle () вызовут или когда выходит клиентское приложение.

    Локальный атрибут «TargetApplication» используется для указания приложения, которое будет запущено, когда удаленное устройство пытается соединиться со службой (путем открытия L2CAP или канала RFCOMM типа, указанного в службе). Это значение должно быть строкой, представляющей абсолютный путь целевой исполнимой программе (не только .app обертка - т.е./system/library/coreservices/obexagent.app/contents/macos/obexagent). Этот атрибут является дополнительным. Если никакой локальный атрибут «TargetApplication» не будет указан, то никакое специальное действие не будет иметь место, когда будет создано входящее соединение со службой. Это до клиента, чтобы контролировать для соединения и сделать правильную вещь, когда каждый появляется.

    Свойство «LocalAttributes» является дополнительным. Если это не указано, по умолчанию создаваемая служба является переходной и будет удалена, когда выходит клиент.

    Дополнительные локальные атрибуты для дальнейшего управления входящими службами будут добавлены в будущем.

    Оператор импорта

    Objective C

    @import IOBluetooth;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

  • Позволяет клиенту регистрироваться для уведомления разъединения устройства.

    Объявление

    Swift

    func IOBluetoothDeviceRegisterForDisconnectNotification(_ inDevice: IOBluetoothDevice!, _ callback: IOBluetoothUserNotificationCallback, _ inRefCon: UnsafeMutablePointer<Void>) -> Unmanaged<IOBluetoothUserNotification>!

    Objective C

    IOBluetoothUserNotificationRef IOBluetoothDeviceRegisterForDisconnectNotification ( IOBluetoothDeviceRef inDevice, IOBluetoothUserNotificationCallback callback, void *inRefCon );

    Параметры

    callback

    Обратный вызов, который вызовут, когда уничтожается соединение цели

    inRefCon

    Предоставленный клиентами refCon, который будет передан обратному вызову.

    Возвращаемое значение

    Возвращает IOBluetoothUserNotificationRef, представляющий выдающееся уведомление разъединения устройства. Чтобы не зарегистрировать уведомление, вызовите IOBluetoothUserNotificationUnregister () с возвращенным IOBluetoothUserNotificationRef. Если с ошибкой встречаются, создавая уведомление, NULL возвращается. Возвращенный IOBluetoothUserNotificationRef будет допустим столько, сколько регистрируется уведомление. Не необходимо сохранить результат. Как только уведомление не зарегистрировано, это больше не будет допустимо.

    Обсуждение

    Когда соединение целевого устройства будет закрыто, данный обратный вызов вызовут..

    Оператор импорта

    Objective C

    @import IOBluetooth;

    Swift

    import IOBluetooth

    Доступность

    Доступный в OS X v10.2 и позже.

  • Возвращается BluetoothObjectID передал как параметр автозапущенному приложению.

    Объявление

    Objective C

    IOBluetoothObjectID IOBluetoothGetObjectIDFromArguments ( int argc, const char *argv[] );

    Параметры

    argc

    argc параметр передал основному ()

    argv

    argv параметр передал основному ()

    Возвращаемое значение

    Возвращается BluetoothObjectID передал в данных параметрах. Если никакой ID не присутствует, kIOBluetoothObjectIDNULL возвращается.

    Обсуждение

    Когда приложение автозапускается окрашенным в синий цвет процессом (в результате входящего соединения с соответственно сконфигурированной службой), этому передали BluetoothObjectID ему на командной строке. Для получения BluetoothObjectID просто передайте argc и argv параметры, полученные в основном () к этой функции. Возвращенный BluetoothObjectID может тогда использоваться для нахождения надлежащего IOBluetoothL2CAPChannel или IOBluetoothRFCOMMChannel в зависимости от типа службы (использующий IOBluetoothL2CAPChannelCreateFromObjectID () или IOBluetoothRFCOMMChannelCreateFromObjectID.)

    *** DEPRECATED IN BLUETOOTH 2.2 (OS X v10.6) *** Вы должен перейти Ваш код к эквивалентам Objective C. *** Этот API может быть удален любое время в будущем.

    Оператор импорта

    Objective C

    @import IOBluetooth;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.6.

  • Подсказки, что программное обеспечение OS X Bluetooth должно проигнорировать устройство HID, соединяющееся.

    Объявление

    Swift

    func IOBluetoothIgnoreHIDDevice(_ device: IOBluetoothDevice!)

    Objective C

    void IOBluetoothIgnoreHIDDevice ( IOBluetoothDeviceRef device );

    Параметры

    device

    Bluetooth-устройство для игнорирования.

    Оператор импорта

    Objective C

    @import IOBluetooth;

    Swift

    import IOBluetooth

    Доступность

    Доступный в OS X v10.6 и позже.

  • Позволяет клиенту регистрировать для канала близкое уведомление.

    Объявление

    Swift

    func IOBluetoothL2CAPChannelRegisterForChannelCloseNotification(_ channel: IOBluetoothL2CAPChannel!, _ callback: IOBluetoothUserNotificationCallback, _ inRefCon: UnsafeMutablePointer<Void>) -> Unmanaged<IOBluetoothUserNotification>!

    Objective C

    IOBluetoothUserNotificationRef IOBluetoothL2CAPChannelRegisterForChannelCloseNotification ( IOBluetoothL2CAPChannelRef channel, IOBluetoothUserNotificationCallback callback, void *inRefCon );

    Параметры

    channel

    Целевой канал L2CAP

    callback

    Обратный вызов, который вызовут, когда закрывается канал L2CAP.

    inRefCon

    Предоставленный клиентами refCon, который будет передан обратному вызову.

    Возвращаемое значение

    Возвращает IOBluetoothUserNotificationRef, представляющий выдающийся канал L2CAP близкое уведомление. Чтобы не зарегистрировать уведомление, вызовите IOBluetoothUserNotificationUnregister () с возвращенным IOBluetoothUserNotificationRef. Если с ошибкой встречаются, создавая уведомление, NULL возвращается. Возвращенный IOBluetoothUserNotificationRef будет допустим столько, сколько регистрируется уведомление. Не необходимо сохранить результат. Как только уведомление не зарегистрировано, это больше не будет допустимо.

    Обсуждение

    Когда канал L2CAP будет закрыт, данный обратный вызов вызовут.

    Оператор импорта

    Objective C

    @import IOBluetooth;

    Swift

    import IOBluetooth

    Доступность

    Доступный в OS X v10.2 и позже.

  • Позволяет клиенту регистрироваться для уведомлений подключения устройства для любого соединения.

    Объявление

    Swift

    func IOBluetoothRegisterForDeviceConnectNotifications(_ callback: IOBluetoothUserNotificationCallback, _ inRefCon: UnsafeMutablePointer<Void>) -> Unmanaged<IOBluetoothUserNotification>!

    Objective C

    IOBluetoothUserNotificationRef IOBluetoothRegisterForDeviceConnectNotifications ( IOBluetoothUserNotificationCallback callback, void *inRefCon );

    Параметры

    callback

    Обратный вызов, который вызовут, когда сделано новое соединение

    inRefCon

    Предоставленный клиентами refCon, который будет передан обратному вызову.

    Возвращаемое значение

    Возвращает IOBluetoothUserNotificationRef, представляющий выдающееся уведомление подключения устройства. Чтобы не зарегистрировать уведомление, вызовите IOBluetoothUserNotificationUnregister () с возвращенным IOBluetoothUserNotificationRef. Если с ошибкой встречаются, создавая уведомление, NULL возвращается. Возвращенный IOBluetoothUserNotificationRef будет допустим столько, сколько регистрируется уведомление. Не необходимо сохранить результат. Как только уведомление не зарегистрировано, это больше не будет допустимо.

    Обсуждение

    Данный обратный вызов вызовут каждый раз, когда сделано любое подключение устройства.

    Оператор импорта

    Objective C

    @import IOBluetooth;

    Swift

    import IOBluetooth

    Доступность

    Доступный в OS X v10.2 и позже.

  • Позволяет клиенту регистрировать для канала L2CAP открытые уведомления для определенных типов каналов L2CAP.

    Объявление

    Swift

    func IOBluetoothRegisterForFilteredL2CAPChannelOpenNotifications(_ callback: IOBluetoothUserNotificationCallback, _ inRefCon: UnsafeMutablePointer<Void>, _ psm: BluetoothL2CAPPSM, _ inDirection: IOBluetoothUserNotificationChannelDirection) -> Unmanaged<IOBluetoothUserNotification>!

    Objective C

    IOBluetoothUserNotificationRef IOBluetoothRegisterForFilteredL2CAPChannelOpenNotifications ( IOBluetoothUserNotificationCallback callback, void *inRefCon, BluetoothL2CAPPSM inPSM, IOBluetoothUserNotificationChannelDirection inDirection );

    Параметры

    callback

    Обратный вызов, который вызовут, когда открыт новый канал L2CAP.

    inRefCon

    Предоставленный клиентами refCon, который будет передан обратному вызову.

    psm

    PSM для соответствия нового канала L2CAP. Если PSM не имеет значения, 0 может быть передан в.

    inDirection

    Желаемое направление канала L2CAP - kIOBluetoothUserNotificationChannelDirectionAny, если направление не имеет значения.

    Возвращаемое значение

    Возвращает IOBluetoothUserNotificationRef, представляющий выдающееся уведомление канала L2CAP. Чтобы не зарегистрировать уведомление, вызовите IOBluetoothUserNotificationUnregister () с возвращенным IOBluetoothUserNotificationRef. Если с ошибкой встречаются, создавая уведомление, NULL возвращается. Возвращенный IOBluetoothUserNotificationRef будет допустим столько, сколько регистрируется уведомление. Не необходимо сохранить результат. Как только уведомление не зарегистрировано, это больше не будет допустимо.

    Обсуждение

    Данный обратный вызов вызовут каждый раз, когда открыт любой канал L2CAP.

    Оператор импорта

    Objective C

    @import IOBluetooth;

    Swift

    import IOBluetooth

    Доступность

    Доступный в OS X v10.2 и позже.

  • Позволяет клиенту регистрировать для канала RFCOMM открытые уведомления для определенных типов каналов RFCOMM.

    Объявление

    Swift

    func IOBluetoothRegisterForFilteredRFCOMMChannelOpenNotifications(_ callback: IOBluetoothUserNotificationCallback, _ inRefCon: UnsafeMutablePointer<Void>, _ channeLID: BluetoothRFCOMMChannelID, _ inDirection: IOBluetoothUserNotificationChannelDirection) -> Unmanaged<IOBluetoothUserNotification>!

    Objective C

    IOBluetoothUserNotificationRef IOBluetoothRegisterForFilteredRFCOMMChannelOpenNotifications ( IOBluetoothUserNotificationCallback callback, void *inRefCon, BluetoothRFCOMMChannelID channelID, IOBluetoothUserNotificationChannelDirection inDirection );

    Параметры

    callback

    Обратный вызов, который вызовут, когда открыт новый канал RFCOMM.

    inRefCon

    Предоставленный клиентами refCon, который будет передан обратному вызову.

    channeLID

    Идентификатор канала RFCOMM для соответствия нового канала RFCOMM. Если идентификатор канала не имеет значения, 0 может быть передан в.

    inDirection

    Желаемое направление канала RFCOMM - kIOBluetoothUserNotificationChannelDirectionAny, если направление не имеет значения.

    Возвращаемое значение

    Возвращает IOBluetoothUserNotificationRef, представляющий выдающееся уведомление канала RFCOMM. Чтобы не зарегистрировать уведомление, вызовите IOBluetoothUserNotificationUnregister () с возвращенным IOBluetoothUserNotificationRef. Если с ошибкой встречаются, создавая уведомление, NULL возвращается. Возвращенный IOBluetoothUserNotificationRef будет допустим столько, сколько регистрируется уведомление. Не необходимо сохранить результат. Как только уведомление не зарегистрировано, это больше не будет допустимо.

    Обсуждение

    Данный обратный вызов вызовут каждый раз, когда открыт любой канал RFCOMM.

    Оператор импорта

    Objective C

    @import IOBluetooth;

    Swift

    import IOBluetooth

    Доступность

    Доступный в OS X v10.2 и позже.

  • Позволяет клиенту регистрировать для канала L2CAP открытые уведомления для любого канала L2CAP.

    Объявление

    Swift

    func IOBluetoothRegisterForL2CAPChannelOpenNotifications(_ callback: IOBluetoothUserNotificationCallback, _ inRefCon: UnsafeMutablePointer<Void>) -> Unmanaged<IOBluetoothUserNotification>!

    Objective C

    IOBluetoothUserNotificationRef IOBluetoothRegisterForL2CAPChannelOpenNotifications ( IOBluetoothUserNotificationCallback callback, void *inRefCon );

    Параметры

    callback

    Обратный вызов, который вызовут, когда открыт новый канал L2CAP.

    inRefCon

    Предоставленный клиентами refCon, который будет передан обратному вызову.

    Возвращаемое значение

    Возвращает IOBluetoothUserNotificationRef, представляющий выдающееся уведомление канала L2CAP. Чтобы не зарегистрировать уведомление, вызовите IOBluetoothUserNotificationUnregister () с возвращенным IOBluetoothUserNotificationRef. Если с ошибкой встречаются, создавая уведомление, NULL возвращается. Возвращенный IOBluetoothUserNotificationRef будет допустим столько, сколько регистрируется уведомление. Не необходимо сохранить результат. Как только уведомление не зарегистрировано, это больше не будет допустимо.

    Обсуждение

    Данный обратный вызов вызовут каждый раз, когда открыт любой канал L2CAP.

    Оператор импорта

    Objective C

    @import IOBluetooth;

    Swift

    import IOBluetooth

    Доступность

    Доступный в OS X v10.2 и позже.

  • Позволяет клиенту регистрировать для канала RFCOMM открытые уведомления для любого канала RFCOMM.

    Объявление

    Swift

    func IOBluetoothRegisterForRFCOMMChannelOpenNotifications(_ callback: IOBluetoothUserNotificationCallback, _ inRefCon: UnsafeMutablePointer<Void>) -> Unmanaged<IOBluetoothUserNotification>!

    Objective C

    IOBluetoothUserNotificationRef IOBluetoothRegisterForRFCOMMChannelOpenNotifications ( IOBluetoothUserNotificationCallback callback, void *inRefCon );

    Параметры

    callback

    Обратный вызов, который вызовут, когда открыт новый канал RFCOMM.

    inRefCon

    Предоставленный клиентами refCon, который будет передан обратному вызову.

    Возвращаемое значение

    Возвращает IOBluetoothUserNotificationRef, представляющий выдающееся уведомление канала RFCOMM. Чтобы не зарегистрировать уведомление, вызовите IOBluetoothUserNotificationUnregister () с возвращенным IOBluetoothUserNotificationRef. Если с ошибкой встречаются, создавая уведомление, NULL возвращается. Возвращенный IOBluetoothUserNotificationRef будет допустим столько, сколько регистрируется уведомление. Не необходимо сохранить результат. Как только уведомление не зарегистрировано, это больше не будет допустимо.

    Обсуждение

    Данный обратный вызов вызовут каждый раз, когда открыт любой канал RFCOMM.

    Оператор импорта

    Objective C

    @import IOBluetooth;

    Swift

    import IOBluetooth

    Доступность

    Доступный в OS X v10.2 и позже.

  • Дубликат к вышеупомянутому IOBluetoothIgnoreHIDDevice () API.

    Объявление

    Swift

    func IOBluetoothRemoveIgnoredHIDDevice(_ device: IOBluetoothDevice!)

    Objective C

    void IOBluetoothRemoveIgnoredHIDDevice ( IOBluetoothDeviceRef device );

    Параметры

    device

    Bluetooth-устройство к «ООН» игнорирует.

    Оператор импорта

    Objective C

    @import IOBluetooth;

    Swift

    import IOBluetooth

    Доступность

    Доступный в OS X v10.6 и позже.

  • Удаляет персистентный драйвер аудио для устройства, уже добавленного с помощью IOBluetoothAddAudioDevice ().

    Объявление

    Objective C

    IOReturn IOBluetoothRemoveSCOAudioDevice ( IOBluetoothDeviceRef device );

    Параметры

    device

    Аудиоустройство Bluetooth для удаления

    Возвращаемое значение

    Возвраты kIOReturnSuccess, если был успешно удален драйвер аудио.

    Оператор импорта

    Objective C

    @import IOBluetooth;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

  • Удаляет данную службу из локального сервера SDP.

    Объявление

    Objective C

    IOReturn IOBluetoothRemoveServiceWithRecordHandle ( BluetoothSDPServiceRecordHandle serviceRecordHandle );

    Параметры

    serviceRecordHandle

    Дескриптор службы, которая будет удалена.

    Возвращаемое значение

    Возвраты kIOReturnSuccess в случае успеха.

    Обсуждение

    Дескриптор служебной книжки, переданный этой функции, должен соответствовать дескриптор в служебной книжке, возвращенной IOBluetoothAddServiceDict.

    Оператор импорта

    Objective C

    @import IOBluetooth;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

  • Позволяет клиенту регистрировать для канала близкое уведомление.

    Объявление

    Swift

    func IOBluetoothRFCOMMChannelRegisterForChannelCloseNotification(_ channel: IOBluetoothRFCOMMChannel!, _ callback: IOBluetoothUserNotificationCallback, _ inRefCon: UnsafeMutablePointer<Void>) -> Unmanaged<IOBluetoothUserNotification>!

    Objective C

    IOBluetoothUserNotificationRef IOBluetoothRFCOMMChannelRegisterForChannelCloseNotification ( IOBluetoothRFCOMMChannelRef inChannel, IOBluetoothUserNotificationCallback callback, void *inRefCon );

    Параметры

    channel

    Целевой канал RFCOMM

    callback

    Обратный вызов, который вызовут, когда закрывается канал RFCOMM.

    inRefCon

    Предоставленный клиентами refCon, который будет передан обратному вызову.

    Возвращаемое значение

    Возвращает IOBluetoothUserNotificationRef, представляющий выдающийся канал RFCOMM близкое уведомление. Чтобы не зарегистрировать уведомление, вызовите IOBluetoothUserNotificationUnregister () с возвращенным IOBluetoothUserNotificationRef. Если с ошибкой встречаются, создавая уведомление, NULL возвращается. Возвращенный IOBluetoothUserNotificationRef будет допустим столько, сколько регистрируется уведомление. Не необходимо сохранить результат. Как только уведомление не зарегистрировано, это больше не будет допустимо.

    Обсуждение

    Когда канал RFCOMM будет закрыт, данный обратный вызов вызовут.

    Оператор импорта

    Objective C

    @import IOBluetooth;

    Swift

    import IOBluetooth

    Доступность

    Доступный в OS X v10.2 и позже.

  • Не регистрирует целевое уведомление.

    Объявление

    Swift

    func IOBluetoothUserNotificationUnregister(_ notificationRef: IOBluetoothUserNotification!)

    Objective C

    void IOBluetoothUserNotificationUnregister ( IOBluetoothUserNotificationRef notificationRef );

    Параметры

    notificationRef

    Целевой IOBluetoothUserNotificationRef, чтобы быть незарегистрированным

    Возвращаемое значение

    Ни один.

    Обсуждение

    Эта функция не зарегистрирует уведомление. Как только уведомление было не зарегистрировано, оно больше не будет вызывать обратный вызов. Кроме того, как только эта функция была вызвана, целевой IOBluetoothUserNotificationRef больше не действителен.

    Оператор импорта

    Objective C

    @import IOBluetooth;

    Swift

    import IOBluetooth

    Доступность

    Доступный в OS X v10.2 и позже.

Обратные вызовы

  • Определение функции обратного вызова для пользовательских уведомлений.

    Объявление

    Swift

    typealias IOBluetoothUserNotificationCallback = CFunctionPointer<((UnsafeMutablePointer<Void>, IOBluetoothUserNotification!, IOBluetoothObject!) -> Void)>

    Objective C

    typedef void ( *IOBluetoothUserNotificationCallback)( void *userRefCon, IOBluetoothUserNotificationRef inRef, IOBluetoothObjectRef objectRef );

    Параметры

    userRefCon

    (недействительный *), Этот определяемый пользователем параметр был предоставлен во время первоначального вызова для регистрации уведомления.

    inRef

    (IOBluetoothUserNotificationRef) уведомление, ответственное за отправку уведомления.

    status

    (IOBluetoothObjectRef) объект, породивший уведомление.

    Возвращаемое значение

    Ни один.

    Обсуждение

    Этот обратный вызов будет вызван, когда будет отправлено уведомление, для которого он был зарегистрирован.

    Оператор импорта

    Objective C

    @import IOBluetooth;

    Swift

    import IOBluetooth

    Доступность

    Доступный в OS X v10.2 и позже.

Типы данных

См. Обзор для документации уровня заголовка.

  • Объявление

    Swift

    typealias IOBluetoothDeviceSearchOptions = UInt32

    Objective C

    typedef UInt32 IOBluetoothDeviceSearchOptions;

    Оператор импорта

    Objective C

    @import IOBluetooth;

    Swift

    import IOBluetooth

    Доступность

    Доступный в OS X v10.2 и позже.

  • Структура раньше искала определенные устройства.

    Объявление

    Objective C

    struct IOBluetoothDeviceSearchAttributes { IOBluetoothDeviceSearchOptions options; // Options. IOItemCount maxResults; // Maximum number of results you desire. 0 means infinite. IOItemCount deviceAttributeCount; IOBluetoothDeviceSearchDeviceAttributes *attributeList; };

    Обсуждение

    Можно искать общие классы устройства и классы обслуживания, или можно искать определенный адрес устройства или имя. При передаче NULL как структуры атрибута Вы получите устройства ALL в близости, найденной во время поиска. Обратите внимание на то, что передача обнуленного блока атрибутов не эквивалентна передаче в NULL!

  • Структура раньше искала определенные устройства.

    Объявление

    Objective C

    struct IOBluetoothDeviceSearchDeviceAttributes { BluetoothDeviceAddress address; // 00 08 22 44 AB 56, etc. BluetoothDeviceName name; // "Al Yankovic' s Phone", etc. BluetoothServiceClassMajor serviceClassMajor; // Networking , Rendering, etc. BluetoothDeviceClassMajor deviceClassMajor; // Computer , Phone, Audio, etc. BluetoothDeviceClassMinor deviceClassMinor; // Desktop , cordless, headset , etc. };

    Обсуждение

    Удостоверьтесь, что Вы указываете все поля! Если Вы не устанавливаете deviceClassMajor, например, и значение 0, который отображается на kBluetoothDeviceClassMajorMiscellaneous, который является, вероятно, не, что Вы хотите. Для поиска всех типов устройства необходимо передать kBluetoothDeviceClassMajorAny и его родственников.

Константы

См. Обзор для документации уровня заголовка.

  • Биты для определения, что bluetooth-устройства искать

    Объявление

    Swift

    struct IOBluetoothDeviceSearchDeviceAttributes { var address: BluetoothDeviceAddress var name: BluetoothDeviceName var serviceClassMajor: BluetoothServiceClassMajor var deviceClassMajor: BluetoothDeviceClassMajor var deviceClassMinor: BluetoothDeviceClassMinor }

    Objective C

    //-------------------------------------------------------------------------------------------------------------------------- /*! @enum IOBluetoothDeviceSearchTypesBits */ enum IOBluetoothDeviceSearchTypesBits { kIOBluetoothDeviceSearchClassic = 1, }; typedef struct IOBluetoothDeviceSearchDeviceAttributes IOBluetoothDeviceSearchDeviceAttributes; //-------------------------------------------------------------------------------------------------------------------------- /*! @struct IOBluetoothDeviceSearchAttributes */ typedef struct IOBluetoothDeviceSearchAttributes IOBluetoothDeviceSearchAttributes; //-------------------------------------------------------------------------------------------------------------------------- /*! @typedef IOBluetoothDeviceSearchTypes */ typedef UInt32 IOBluetoothDeviceSearchTypes;

    Обсуждение

    Можно искать общие классы устройства и классы обслуживания, или можно искать определенный адрес устройства или имя. При передаче NULL как структуры атрибута Вы получите устройства ALL в близости, найденной во время поиска. Обратите внимание на то, что передача обнуленного блока атрибутов не эквивалентна передаче в NULL!

    Оператор импорта

    Objective C

    @import IOBluetooth;

    Swift

    import IOBluetooth

    Доступность

    Доступный в OS X v10.2 и позже.

  • Биты для определения, что bluetooth-устройства искать

    Объявление

    Objective C

    //-------------------------------------------------------------------------------------------------------------------------- /*! @enum IOBluetoothDeviceSearchTypesBits */ enum IOBluetoothDeviceSearchTypesBits { kIOBluetoothDeviceSearchClassic = 1, };

    Обсуждение

    Можно искать общие классы устройства и классы обслуживания, или можно искать определенный адрес устройства или имя. При передаче NULL как структуры атрибута Вы получите устройства ALL в близости, найденной во время поиска. Обратите внимание на то, что передача обнуленного блока атрибутов не эквивалентна передаче в NULL!