IOBluetoothSDPServiceRecord
Экземпляр этого класса представляет единственную служебную книжку SDP.
Как сервис запись, экземпляр этого класса имеет NSDictionary атрибутов службы. Это также имеет ссылку к IOBluetoothDevice, которому принадлежит служба. Словарь службы выключается атрибута ID каждого атрибута, представленного как NSNumber.
Соответствует
-
AnyObject
-
CVarArgType
-
Сопоставимый
-
Hashable
-
NSCoding
-
NSObjectProtocol
-
Печатаемый
-
NSCoding
-
NSObject
Оператор импорта
Swift
import IOBluetooth
Objective C
@import IOBluetooth;
Доступность
Доступный в OS X v10.2 и позже.
-
Возвращает элемент данных для данного атрибута ID в целевой службе.
Объявление
Swift
func getAttributeDataElement(_
attributeID
: BluetoothSDPServiceAttributeID) -> IOBluetoothSDPDataElement!Objective C
- (IOBluetoothSDPDataElement *)getAttributeDataElement:(BluetoothSDPServiceAttributeID)
attributeID
Параметры
attributeID
Атрибут ID желаемого атрибута.
Возвращаемое значение
Возвращает элемент данных для данного атрибута ID в целевой службе. Если служба не содержит атрибут с данным ID, то ноль возвращается.
Оператор импорта
Objective C
@import IOBluetooth;
Swift
import IOBluetooth
Доступность
Доступный в OS X v10.2 и позже.
-
Позволяет открытие L2CAP PSM, присвоенного службе.
Объявление
Swift
func getL2CAPPSM(_
outPSM
: UnsafeMutablePointer<BluetoothL2CAPPSM>) -> IOReturnObjective C
- (IOReturn)getL2CAPPSM:(BluetoothL2CAPPSM *)
outPSM
Параметры
outPSM
Указатель на расположение, которое получит найденный L2CAP PSM.
Возвращаемое значение
Возвраты kIOReturnSuccess, если найден PSM.
Обсуждение
Этот метод перероет атрибут ProtoclDescriptorList для нахождения записи с L2CAP UUID (UUID16: 0x0100). Если Вы найдены, это получает второй элемент последовательности элемента данных и устанавливает outPSM указатель на него. PSM оценивает, только установлен, когда возвращается kIOReturnSuccess.
Оператор импорта
Objective C
@import IOBluetooth;
Swift
import IOBluetooth
Доступность
Доступный в OS X v10.2 и позже.
-
Позволяет открытие идентификатора канала RFCOMM, присвоенного службе.
Объявление
Swift
func getRFCOMMChannelID(_
rfcommChannelID
: UnsafeMutablePointer<BluetoothRFCOMMChannelID>) -> IOReturnObjective C
- (IOReturn)getRFCOMMChannelID:(BluetoothRFCOMMChannelID *)
rfcommChannelID
Параметры
rfcommChannelID
Указатель на расположение, которое получит найденный идентификатор канала RFCOMM.
Возвращаемое значение
Возвраты kIOReturnSuccess, если найден идентификатор канала.
Обсуждение
Этот метод перероет атрибут ProtoclDescriptorList для нахождения записи с RFCOMM UUID (UUID16: 0x0003). Если Вы найдены, это получает второй элемент последовательности элемента данных и устанавливает rfcommChannelID указатель на него. Когда kIOReturnSuccess возвращается, идентификатор канала только установлен.
Оператор импорта
Objective C
@import IOBluetooth;
Swift
import IOBluetooth
Доступность
Доступный в OS X v10.2 и позже.
-
Возвращает представление IOBluetoothSDPServiceRecordRef целевого объекта IOBluetoothSDPServiceRecord.
Объявление
Swift
func getSDPServiceRecordRef() -> Unmanaged<IOBluetoothSDPServiceRecord>!
Objective C
- (IOBluetoothSDPServiceRecordRef)getSDPServiceRecordRef
Возвращаемое значение
Возвращает представление IOBluetoothSDPServiceRecordRef целевого объекта IOBluetoothSDPServiceRecord.
Оператор импорта
Objective C
@import IOBluetooth;
Swift
import IOBluetooth
Доступность
Доступный в OS X v10.2 и позже.
-
Возвращает имя службы.
Возвращаемое значение
Возвращает имя целевой службы.
Обсуждение
Это в настоящее время реализуется для простого возврата атрибута с ID 0x0100. В будущем это будет расширено для разрешения локализации имени на основе выбранного языка пользователя или других языков.
Оператор импорта
Objective C
@import IOBluetooth;
Swift
import IOBluetooth
Доступность
Доступный в OS X v10.2 и позже.
-
Позволяет открытие дескриптора служебной книжки, присвоенного службе.
Объявление
Swift
func getServiceRecordHandle(_
outServiceRecordHandle
: UnsafeMutablePointer<BluetoothSDPServiceRecordHandle>) -> IOReturnObjective C
- (IOReturn)getServiceRecordHandle:(BluetoothSDPServiceRecordHandle *)
outServiceRecordHandle
Параметры
outServiceRecordHandle
Указатель на расположение, которое получит найденный дескриптор служебной книжки.
Возвращаемое значение
Возвраты kIOReturnSuccess, если найден дескриптор служебной книжки.
Обсуждение
Этот метод перероет атрибуты для нахождения того, представляющего дескриптор служебной книжки. Если Вы найдены, outServiceRecordHandle param установлен со значением. outServiceRecordHandle оценивают, только установлен, когда возвращается kIOReturnSuccess.
Оператор импорта
Objective C
@import IOBluetooth;
Swift
import IOBluetooth
Доступность
Доступный в OS X v10.2 и позже.
-
Если кто-либо из UUIDs в данном массиве найден в целевой службе, возвращает TRUE.
Объявление
Swift
func hasServiceFromArray(_
array
: [AnyObject]!) -> BoolObjective C
- (BOOL)hasServiceFromArray:(NSArray *)
array
Параметры
array
NSArray IOBluetoothSDPUUID возражает для поиска в целевой службе.
Возвращаемое значение
Если какой-либо из данных UUIDs присутствует в службе, возвращает TRUE.
Обсуждение
Данный массив должен содержать объекты IOBluetoothSDPUUID. Это в настоящее время реализуется таким образом, что это возвращает TRUE, если найден какой-либо из UUIDs. Однако, в будущем, вероятно, что это изменится, чтобы более близко соответствовать функциональность в спецификации SDP так, чтобы это только возвратило TRUE, если присутствуют все данные UUIDs. Тот путь, и AND и сравнения OR может быть реализован. Обратите внимание на это потенциальное изменение.
Оператор импорта
Objective C
@import IOBluetooth;
Swift
import IOBluetooth
Доступность
Доступный в OS X v10.2 и позже.
-
Возвращает инициализированный IOBluetoothSDPServiceRecord * с атрибутами, указанными в предоставленном словаре службы. Обеспечьте указатель на IOBlueotothDevice, если Вы хотите связать запись на определенный IOBluetoothDevice.
Объявление
Swift
init!(serviceDictionary
serviceDict
: [NSObject : AnyObject]!, devicedevice
: IOBluetoothDevice!)Objective C
- (instancetype)initWithServiceDictionary:(NSDictionary *)
serviceDict
device:(IOBluetoothDevice *)device
Оператор импорта
Objective C
@import IOBluetooth;
Swift
import IOBluetooth
Доступность
Доступный в OS X v10.6 и позже.
См. также
initWithServiceDictionary
-
Возвращает TRUE, который любой из массивов UUID в поисковом массиве соответствует целевой службе.
Объявление
Swift
func matchesSearchArray(_
array
: [AnyObject]!) -> BoolObjective C
- (BOOL)matchesSearchArray:(NSArray *)
array
Параметры
array
NSArray NSArrays объектов IOBluetoothSDPUUID.
Возвращаемое значение
Если какой-либо из UUID выстраивает соответствие, возвращает TRUE.
Обсуждение
Данный массив должен содержать объекты НСАРРЕЯ. Каждый sub-NSArray должен содержать объекты IOBluetoothSDPUUID. В свою очередь, каждый sub-NSArray передается-matchesUUIDArray: ПРАВДА, если любой из тех возвратов, то поисковые остановки и TRUE возвращаются. По существу ведущее устройство Нсаррей содержит операции OR, и каждый подмассив содержит операции И.
Примечание: Этот метод только доступен в Mac OS X 10.2.4 (Bluetooth v1.1) или позже.
Оператор импорта
Objective C
@import IOBluetooth;
Swift
import IOBluetooth
Доступность
Доступный в OS X v10.2 и позже.
-
Возвращает TRUE, которым UUID16 найден в целевой службе.
Примечание: Этот метод только доступен в Mac OS X 10.7 или позже.
Объявление
Swift
func matchesUUID16(_
uuid16
: BluetoothSDPUUID16) -> BoolObjective C
- (BOOL)matchesUUID16:(BluetoothSDPUUID16)
uuid16
Параметры
uuid16
BluetoothSDPUUID16 для поиска в целевой службе.
Возвращаемое значение
Если UUID16 присутствует в службе, возвращает TRUE.
Оператор импорта
Objective C
@import IOBluetooth;
Swift
import IOBluetooth
Доступность
Доступный в OS X v10.7 и позже.
-
Если ALL UUIDs в данном массиве найден в целевой службе, возвращает TRUE.
Объявление
Swift
func matchesUUIDArray(_
array
: [AnyObject]!) -> BoolObjective C
- (BOOL)matchesUUIDArray:(NSArray *)
array
Параметры
array
NSArray IOBluetoothSDPUUID возражает для поиска в целевой службе.
Возвращаемое значение
Если все данные UUIDs присутствуют в службе, возвращает TRUE.
Обсуждение
Данный массив должен содержать объекты IOBluetoothSDPUUID. Если все UUIDs найдены, это только возвращает TRUE. Этот метод походит на hasServiceFromArray: за исключением того, что это требует, чтобы все UUIDs соответствовали вместо любого из них соответствие.
Примечание: Этот метод только доступен в Mac OS X 10.2.4 (Bluetooth v1.1) или позже.
Оператор импорта
Objective C
@import IOBluetooth;
Swift
import IOBluetooth
Доступность
Доступный в OS X v10.2 и позже.
-
Удаляет службу из локального сервера SDP.
Объявление
Swift
func removeServiceRecord() -> IOReturn
Objective C
- (IOReturn)removeServiceRecord
Возвращаемое значение
Возвраты kIOReturnSuccess в случае успеха.
Оператор импорта
Objective C
@import IOBluetooth;
Swift
import IOBluetooth
Доступность
Доступный в OS X v10.9 и позже.
-
Добавляет служба к локальному серверу SDP.
Объявление
Swift
class func publishedServiceRecordWithDictionary(_
serviceDict
: [NSObject : AnyObject]!) -> Self!Objective C
+ (instancetype)publishedServiceRecordWithDictionary:(NSDictionary *)
serviceDict
Параметры
serviceDict
Словарь, содержащий атрибуты для новой службы
Возвращаемое значение
Возвращает IOBluetoothSDPServiceRecord * с атрибутами, указанными в предоставленном словаре.
Обсуждение
Каждая запись в словаре, представляющем службу, содержит отдельные атрибуты. Каждый атрибут в 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;
Swift
import IOBluetooth
Доступность
Доступный в OS X v10.9 и позже.
-
Вызов метода для преобразования IOBluetoothSDPServiceRecordRef в IOBluetoothSDPServiceRecord *.
Объявление
Swift
class func withSDPServiceRecordRef(_
sdpServiceRecordRef
: IOBluetoothSDPServiceRecord!) -> Self!Objective C
+ (instancetype)withSDPServiceRecordRef:(IOBluetoothSDPServiceRecordRef)
sdpServiceRecordRef
Параметры
sdpServiceRecordRef
IOBluetoothSDPServiceRecordRef, для которого желаем IOBluetoothSDPServiceRecord *.
Возвращаемое значение
Возвращает IOBluetoothSDPServiceRecord * для данного IOBluetoothSDPServiceRecordRef.
Оператор импорта
Objective C
@import IOBluetooth;
Swift
import IOBluetooth
Доступность
Доступный в OS X v10.2 и позже.
-
Возвращает IOBluetoothSDPServiceRecord * с атрибутами, указанными в предоставленном словаре службы. Обеспечьте указатель на IOBlueotothDevice, если Вы хотите связать запись на определенный IOBluetoothDevice.
Объявление
Swift
class func withServiceDictionary(_
serviceDict
: [NSObject : AnyObject]!, devicedevice
: IOBluetoothDevice!) -> Self!Objective C
+ (instancetype)withServiceDictionary:(NSDictionary *)
serviceDict
device:(IOBluetoothDevice *)device
Возвращаемое значение
Возвращает IOBluetoothSDPServiceRecord * с атрибутами, указанными в предоставленном словаре.
Оператор импорта
Objective C
@import IOBluetooth;
Swift
import IOBluetooth
Доступность
Доступный в OS X v10.6 и позже.
-
sortedAttributes sortedAttributes
СвойствоВозвращает сортированный массив атрибутов SDP
Объявление
Swift
var sortedAttributes: [AnyObject]! { get }
Objective C
@property(readonly, copy) NSArray *sortedAttributes
Возвращаемое значение
Возвращает сортированный массив атрибутов SDP
Обсуждение
Этот метод обойдет все элементы служебной книжки и возвратит массив объектов IOBluetoothSDPServiceAttribute, сортированных attributeID
Оператор импорта
Objective C
@import IOBluetooth;
Swift
import IOBluetooth
Доступность
Доступный в OS X v10.7 и позже.
-
устройство устройство
СвойствоВозвращает IOBluetoothDevice, которому принадлежит целевая служба.
Объявление
Swift
var device: IOBluetoothDevice! { get }
Objective C
@property(readonly, retain) IOBluetoothDevice *device
Возвращаемое значение
Возвращает IOBluetoothDevice, которому принадлежит целевая служба. Если служба - одна, локальный узел продает, то ноль возвращается.
Обсуждение
Если служба является локальной службой (т.е. один, текущий узел продает), то ноль возвращается.
Оператор импорта
Objective C
@import IOBluetooth;
Swift
import IOBluetooth
Доступность
Доступный в OS X v10.6 и позже.
-
Возвращает NSDictionary, содержащий атрибуты для службы.
Объявление
Swift
var attributes: [NSObject : AnyObject]! { get }
Objective C
@property(readonly, copy) NSDictionary *attributes
Возвращаемое значение
Возвращает NSDictionary, содержащий атрибуты для целевой службы.
Обсуждение
Словарь атрибута выключается ID атрибута, представленного как NSNumber. Значения в NSDictionary являются объектами IOBluetoothSDPDataElement, представляющими элемент данных для данного атрибута.
Оператор импорта
Objective C
@import IOBluetooth;
Swift
import IOBluetooth
Доступность
Доступный в OS X v10.6 и позже.