Class

IOBluetoothDevice

An instance of IOBluetoothDevice represents a single remote Bluetooth device.

Declaration

@interface IOBluetoothDevice : IOBluetoothObject

Overview

An IOBluetoothDevice object may exist independent of the existence of a baseband connection with the target device. Using this object, a client can request creation and destruction of baseband connections, and request the opening of L2CAP and RFCOMM channels on the remote device. Many of the other APIs in the IOBluetooth framework will return this object, or it's C counterpart (IOBluetoothDeviceRef).

Topics

Initializers

+ deviceWithAddress:

Returns the IOBluetoothDevice object for the given BluetoothDeviceAddress

+ deviceWithAddressString:

Returns the IOBluetoothDevice object for the given BluetoothDeviceAddress

Instance Properties

addressString

Get a string representation of the Bluetooth device address for the target device. The format of the string is the same as returned by IOBluetoothNSStringFromDeviceAddress().

classOfDevice

Gets the full class of device value for the remote device.

connectionHandle

Get the connection handle for the baseband connection.

deviceClassMajor

Get the major device class of the device.

deviceClassMinor

Get the minor service class of the device.

lastNameUpdate

Get the date/time of the last successful remote name request.

name

Get the human readable name of the remote device.

nameOrAddress

Get the human readable name of the remote device. If the name is not present, it will return a string containing the device's address.

serviceClassMajor

Get the major service class of the device.

services

Gets an array of service records for the device.

Instance Methods

- RSSI

Get the RSSI device (if connected), above or below the golden range. If the RSSI is within the golden range, a value of 0 is returned. For the actual RSSI value, use getRawRSSI. For more information, see the Bluetooth 4.0 Core Specification.

- addToFavorites

Adds the target device to the user's favorite devices list.

- closeConnection

Close down the baseband connection to the device.

- getAddress

Get the Bluetooth device address for the target device.

- getClockOffset

Get the clock offset value of the device.

- getEncryptionMode

Get the encryption mode for the baseband connection.

- getLastInquiryUpdate

Get the date/time of the last time the device was returned during an inquiry.

- getLastServicesUpdate

Get the date/time of the last SDP query.

- getLinkType

Get the link type for the baseband connection.

- getPageScanMode

Get the page scan mode for the device.

- getPageScanPeriodMode

Get the value of the page scan period mode for the device.

- getPageScanRepetitionMode

Get the value of the page scan repetition mode for the device.

- getServiceRecordForUUID:

Search for a service record containing the given UUID.

- isConnected

Indicates whether a baseband connection to the device exists.

- isFavorite

Reports whether the target device is a favorite for the user.

- isIncoming

Returns TRUE if the device connection was generated by the remote host.

- isPaired

Returns whether the target device is paired.

- openConnection

Create a baseband connection to the device.

- openConnection:

Create a baseband connection to the device.

- openConnection:withPageTimeout:authenticationRequired:

Create a baseband connection to the device.

- openL2CAPChannelAsync:withPSM:delegate:

Opens a new L2CAP channel to the target device. Returns immediately after starting the opening process.

- openL2CAPChannelAsync:withPSM:withConfiguration:delegate:

Opens a new L2CAP channel to the target device. Returns immediately after starting the opening process.

- openL2CAPChannelSync:withPSM:delegate:

Opens a new L2CAP channel to the target device. Returns only after the channel is opened.

- openL2CAPChannelSync:withPSM:withConfiguration:delegate:

Opens a new L2CAP channel to the target device. Returns only after the channel is opened.

- openRFCOMMChannelAsync:withChannelID:delegate:

Opens a new RFCOMM channel to the target device. Returns immediately.

- openRFCOMMChannelSync:withChannelID:delegate:

Opens a new RFCOMM channel to the target device. Returns only once the channel is open or failed to open.

- performSDPQuery:

Performs an SDP query on the target device.

- performSDPQuery:uuids:

Performs an SDP query on the target device with the specified service UUIDs.

- rawRSSI

Get the raw RSSI device (if connected).

- recentAccessDate

Returns the date/time of the most recent access of the target device.

- registerForDisconnectNotification:selector:

Allows a client to register for device disconnect notification.

- remoteNameRequest:

Issues a remote name request to the target device.

- remoteNameRequest:withPageTimeout:

Issues a remote name request to the target device.

- removeFromFavorites

Removes the target device from the user's favorite devices list.

- requestAuthentication

Requests that the existing baseband connection be authenticated.

- sendL2CAPEchoRequest:length:

Send an echo request over the L2CAP connection to a remote device.

- setSupervisionTimeout:

Sets the connection supervision timeout.

- openL2CAPChannel:findExisting:newChannel:

Opens a new L2CAP channel to the target device. Returns immedialty after starting the opening process.

Deprecated

Type Methods

+ favoriteDevices

Gets an array of the user's favorite devices.

+ pairedDevices

Gets an array of all of the paired devices on the system.

+ recentDevices:

Gets an array of recently used Bluetooth devices.

+ registerForConnectNotifications:selector:

Allows a client to register for device connect notifications for any connection.

Relationships

Inherits From