@ohos.bluetoothManager (Bluetooth)

The Bluetooth module provides classic Bluetooth capabilities and Bluetooth Low Energy (BLE) scan and advertising.

NOTE

  • The initial APIs of this module are supported since API version 9. Newly added APIs will be marked with a superscript to indicate their earliest API version.
  • The APIs provided by this module are no longer maintained since API version 10. You are advised to use profile APIs of @ohos.bluetooth.ble.

Modules to Import

import bluetoothManager from '@ohos.bluetoothManager';

bluetoothManager.enableBluetooth(deprecated)

enableBluetooth(): void

Enables Bluetooth.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use access.enableBluetooth.

Required permissions: ohos.permission.DISCOVER_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    bluetoothManager.enableBluetooth();
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.disableBluetooth(deprecated)

disableBluetooth(): void

Disables Bluetooth.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use access.disableBluetooth.

Required permissions: ohos.permission.DISCOVER_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    bluetoothManager.disableBluetooth();
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ", errMessage:" + (err as BusinessError).message);
}

bluetoothManager.getLocalName(deprecated)

getLocalName(): string

Obtains the name of the local Bluetooth device.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.getLocalName.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Return value

Type Description
string Name of the local Bluetooth device obtained.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let localName: string = bluetoothManager.getLocalName();
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.getState(deprecated)

getState(): BluetoothState

Obtains the Bluetooth state.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use access.getState.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Return value

Type Description
BluetoothState Bluetooth state obtained.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let state: bluetoothManager.BluetoothState = bluetoothManager.getState();
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.getBtConnectionState(deprecated)

getBtConnectionState(): ProfileConnectionState

Obtains the local profile connection status.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.getProfileConnectionState.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Return value

Type Description
ProfileConnectionState Profile connection state obtained.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let connectionState: bluetoothManager.ProfileConnectionState = bluetoothManager.getBtConnectionState();
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.setLocalName(deprecated)

setLocalName(name: string): void

Sets the name of the local Bluetooth device.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.setLocalName.

Required permissions: ohos.permission.DISCOVER_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
name string Yes Bluetooth device name to set. It cannot exceed 248 bytes.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    bluetoothManager.setLocalName('device_name');
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.pairDevice(deprecated)

pairDevice(deviceId: string): void

Initiates Bluetooth pairing.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.pairDevice.

Required permissions: ohos.permission.DISCOVER_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
deviceId string Yes Address of the remote device to pair, for example, XX:XX:XX:XX:XX:XX.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    // The address can be scanned.
    bluetoothManager.pairDevice("XX:XX:XX:XX:XX:XX");
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.getProfileConnectionState(deprecated)

getProfileConnectionState(profileId: ProfileId): ProfileConnectionState

Obtains the connection status of the specified profile.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.getProfileConnectionState.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
ProfileId profileId Yes ID of the profile to obtain, for example, PROFILE_A2DP_SOURCE.

Return value

Type Description
ProfileConnectionState Profile connection state obtained.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900004 Profile is not supported.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let result: bluetoothManager.ProfileConnectionState = bluetoothManager.getProfileConnectionState(bluetoothManager.ProfileId.PROFILE_A2DP_SOURCE);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.cancelPairedDevice(deprecated)

cancelPairedDevice(deviceId: string): void

Cancels a paired remote device.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.cancelPairedDevice.

System API: This is a system API.

Required permissions: ohos.permission.DISCOVER_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
deviceId string Yes Address of the remote device to cancel, for example, XX:XX:XX:XX:XX:XX.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    bluetoothManager.cancelPairedDevice("XX:XX:XX:XX:XX:XX");
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.getRemoteDeviceName(deprecated)

getRemoteDeviceName(deviceId: string): string

Obtains the name of the remote Bluetooth device.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.getRemoteDeviceName.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
deviceId string Yes Address of the target remote device, for example, XX:XX:XX:XX:XX:XX.

Return value

Type Description
string Device name (a string) obtained.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let remoteDeviceName: string = bluetoothManager.getRemoteDeviceName("XX:XX:XX:XX:XX:XX");
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.getRemoteDeviceClass(deprecated)

getRemoteDeviceClass(deviceId: string): DeviceClass

Obtains the class of the remote Bluetooth device.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.getRemoteDeviceClass.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
deviceId string Yes Address of the target remote device, for example, XX:XX:XX:XX:XX:XX.

Return value

Type Description
DeviceClass Class of the remote device obtained.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let remoteDeviceClass: bluetoothManager.DeviceClass  = bluetoothManager.getRemoteDeviceClass("XX:XX:XX:XX:XX:XX");
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.getPairedDevices(deprecated)

getPairedDevices(): Array<string>

Obtains the paired devices.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.getPairedDevices.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Return value

Type Description
Array<string> Addresses of the paired Bluetooth devices.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let devices: Array<string> = bluetoothManager.getPairedDevices();
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.setBluetoothScanMode(deprecated)

setBluetoothScanMode(mode: ScanMode, duration: number): void

Sets the Bluetooth scan mode so that the device can be discovered by a remote device.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.setBluetoothScanMode.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
mode ScanMode Yes Bluetooth scan mode to set.
duration number Yes Duration (in ms) in which the device can be discovered. The value 0 indicates unlimited time.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    // The device can be discovered and connected only when the discoverable and connectable mode is used.
    bluetoothManager.setBluetoothScanMode(bluetoothManager.ScanMode.SCAN_MODE_CONNECTABLE_GENERAL_DISCOVERABLE, 100);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.getBluetoothScanMode(deprecated)

getBluetoothScanMode(): ScanMode

Obtains the Bluetooth scan mode.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.getBluetoothScanMode.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Return value

Type Description
ScanMode Bluetooth scan mode to set.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let scanMode: bluetoothManager.ScanMode = bluetoothManager.getBluetoothScanMode();
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.startBluetoothDiscovery(deprecated)

startBluetoothDiscovery(): void

Starts Bluetooth scan to discover remote devices.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.startBluetoothDiscovery.

Required permissions: ohos.permission.DISCOVER_BLUETOOTH and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION

System capability: SystemCapability.Communication.Bluetooth.Core

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
let deviceId: Array<string>;
function onReceiveEvent(data: Array<string>) {
    deviceId = data;
}
try {
    bluetoothManager.on('bluetoothDeviceFind', onReceiveEvent);
    bluetoothManager.startBluetoothDiscovery();
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.stopBluetoothDiscovery(deprecated)

stopBluetoothDiscovery(): void

Stops Bluetooth scan.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.stopBluetoothDiscovery.

Required permissions: ohos.permission.DISCOVER_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    bluetoothManager.stopBluetoothDiscovery();
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.setDevicePairingConfirmation(deprecated)

setDevicePairingConfirmation(device: string, accept: boolean): void

Sets the device pairing confirmation.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.setDevicePairingConfirmation.

Required permissions: ohos.permission.MANAGE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
device string Yes Address of the remote device, for example, XX:XX:XX:XX:XX:XX.
accept boolean Yes Whether to accept the pairing request. The value true means to accept the pairing request, and the value false means the opposite.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
// Subscribe to the pinRequired event and configure the pairing confirmation after receiving a pairing request from the remote device.
function onReceivePinRequiredEvent(data: bluetoothManager.PinRequiredParam) { // data is the input parameter for the pairing request.
    console.info('pin required  = '+ JSON.stringify(data));
    bluetoothManager.setDevicePairingConfirmation(data.deviceId, true);
}
try {
    bluetoothManager.on("pinRequired", onReceivePinRequiredEvent);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.on('bluetoothDeviceFind')(deprecated)

on(type: "bluetoothDeviceFind", callback: Callback<Array<string>>): void

Subscribes to the Bluetooth device discovery events.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.on('bluetoothDeviceFind').

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value bluetoothDeviceFind indicates an event reported when a Bluetooth device is discovered.
callback Callback<Array<string>> Yes Callback invoked to return the discovered devices. You need to implement this callback.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
function onReceiveEvent(data: Array<string>) { // data is an array of Bluetooth device addresses.
    console.info('bluetooth device find = '+ JSON.stringify(data));
}
try {
    bluetoothManager.on('bluetoothDeviceFind', onReceiveEvent);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.off('bluetoothDeviceFind')(deprecated)

off(type: "bluetoothDeviceFind", callback?: Callback<Array<string>>): void

Unsubscribes from the Bluetooth device discovery events.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.off('bluetoothDeviceFind').

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value bluetoothDeviceFind indicates an event reported when a Bluetooth device is discovered.
callback Callback<Array<string>> No Callback for the bluetoothDeviceFind event. If this parameter is not set, this method unsubscribes from all callbacks corresponding to type.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
function onReceiveEvent(data: Array<string>) {
    console.info('bluetooth device find = '+ JSON.stringify(data));
}
try {
    bluetoothManager.on('bluetoothDeviceFind', onReceiveEvent);
    bluetoothManager.off('bluetoothDeviceFind', onReceiveEvent);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.on('pinRequired')(deprecated)

on(type: "pinRequired", callback: Callback<PinRequiredParam>): void

Subscribes to the pairing request events of the remote Bluetooth device.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.on('pinRequired').

Required permissions: ohos.permission.DISCOVER_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value pinRequired indicates a pairing request event.
callback Callback<PinRequiredParam> Yes Callback invoked to return the pairing request. You need to implement this callback.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
function onReceiveEvent(data: bluetoothManager.PinRequiredParam) { // data is the pairing request parameter.
    console.info('pin required = '+ JSON.stringify(data));
}
try {
    bluetoothManager.on('pinRequired', onReceiveEvent);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.off('pinRequired')(deprecated)

off(type: "pinRequired", callback?: Callback<PinRequiredParam>): void

Unsubscribes from the pairing request events of the remote Bluetooth device.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.off('pinRequired').

Required permissions: ohos.permission.DISCOVER_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value pinRequired indicates a pairing request event.
callback Callback<PinRequiredParam> No Callback for the Bluetooth pairing request event. The input parameter is the pairing request parameter. If this parameter is not set, this method unsubscribes from all callbacks corresponding to type.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
function onReceiveEvent(data: bluetoothManager.PinRequiredParam) {
    console.info('pin required = '+ JSON.stringify(data));
}
try {
    bluetoothManager.on('pinRequired', onReceiveEvent);
    bluetoothManager.off('pinRequired', onReceiveEvent);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.on('bondStateChange')(deprecated)

on(type: "bondStateChange", callback: Callback<BondStateParam>): void

Subscribes to the Bluetooth pairing state changes.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.on('bondStateChange').

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value bondStateChange indicates a Bluetooth pairing state change event.
callback Callback<BondStateParam> Yes Callback invoked to return the pairing state. You need to implement this callback.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
function onReceiveEvent(data: bluetoothManager.BondStateParam) { // data, as the input parameter of the callback, indicates the pairing state.
    console.info('pair state = '+ JSON.stringify(data));
}
try {
    bluetoothManager.on('bondStateChange', onReceiveEvent);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.off('bondStateChange')(deprecated)

off(type: "bondStateChange", callback?: Callback<BondStateParam>): void

Unsubscribes from the Bluetooth pairing state changes.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.off('bondStateChange').

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value bondStateChange indicates a Bluetooth pairing state change event.
callback Callback<BondStateParam> No Callback for the change of the Bluetooth pairing state. If this parameter is not set, this method unsubscribes from all callbacks corresponding to type.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
function onReceiveEvent(data: bluetoothManager.BondStateParam) {
    console.info('bond state = '+ JSON.stringify(data));
}
try {
    bluetoothManager.on('bondStateChange', onReceiveEvent);
    bluetoothManager.off('bondStateChange', onReceiveEvent);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.on('stateChange')(deprecated)

on(type: "stateChange", callback: Callback<BluetoothState>): void

Subscribes to Bluetooth state events.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use access.on('stateChange').

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value stateChange indicates a Bluetooth connection state change event.
callback Callback<BluetoothState> Yes Callback invoked to return the Bluetooth connection state. You need to implement this callback.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
function onReceiveEvent(data: bluetoothManager.BluetoothState) {
    console.info('bluetooth state = '+ JSON.stringify(data));
}
try {
    bluetoothManager.on('stateChange', onReceiveEvent);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.off('stateChange')(deprecated)

off(type: "stateChange", callback?: Callback<BluetoothState>): void

Unsubscribes from Bluetooth state events.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use access.off('stateChange').

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value stateChange indicates a Bluetooth connection state change event.
callback Callback<BluetoothState> No Callback for the Bluetooth connection state change event. If this parameter is not set, this method unsubscribes from all callbacks corresponding to type.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
function onReceiveEvent(data: bluetoothManager.BluetoothState) {
    console.info('bluetooth state = '+ JSON.stringify(data));
}
try {
    bluetoothManager.on('stateChange', onReceiveEvent);
    bluetoothManager.off('stateChange', onReceiveEvent);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.sppListen(deprecated)

sppListen(name: string, option: SppOption, callback: AsyncCallback<number>): void

Creates a server listening socket.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use socket.sppListen.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
name string Yes Name of the service.
option SppOption Yes Serial port profile (SPP) listening configuration.
callback AsyncCallback<number> Yes Callback invoked to return the server socket ID.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900004 Profile is not supported.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
let serverNumber = -1;
function serverSocket(code: BusinessError, number: number) {
  console.log('bluetooth error code: ' + code.code);
  if (code.code == 0) {
    console.log('bluetooth serverSocket Number: ' + number);
    serverNumber = number;
  }
}

let sppOption: bluetoothManager.SppOption = {uuid: '00001810-0000-1000-8000-00805F9B34FB', secure: false, type: 0};
try {
    bluetoothManager.sppListen('server1', sppOption, serverSocket);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.sppAccept(deprecated)

sppAccept(serverSocket: number, callback: AsyncCallback<number>): void

Listens for a connection to be made to this socket from the client and accepts it.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use socket.sppAccept.

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
serverSocket number Yes Server socket ID.
callback AsyncCallback<number> Yes Callback invoked to return the client socket ID.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900004 Profile is not supported.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
let serverNumber = -1;
function serverSocket(code: BusinessError, number: number) {
  console.log('bluetooth error code: ' + code.code);
  if (code.code == 0) {
    console.log('bluetooth serverSocket Number: ' + number);
    serverNumber = number;
  }
}
let clientNumber = -1;
function acceptClientSocket(code: BusinessError, number: number) {
  console.log('bluetooth error code: ' + code.code);
  if (code.code == 0) {
    console.log('bluetooth clientSocket Number: ' + number);
    // The obtained clientNumber is used as the socket ID for subsequent read/write operations on the server.
    clientNumber = number;
  }
}
try {
    bluetoothManager.sppAccept(serverNumber, acceptClientSocket);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.sppConnect(deprecated)

sppConnect(device: string, option: SppOption, callback: AsyncCallback<number>): void

Initiates an SPP connection to a remote device from the client.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use socket.sppConnect.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
device string Yes Address of the remote device, for example, XX:XX:XX:XX:XX:XX.
option SppOption Yes Configuration for connecting to the SPP client.
callback AsyncCallback<number> Yes Callback invoked to return the client socket ID.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900004 Profile is not supported.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';

let clientNumber = -1;
function clientSocket(code: BusinessError, number: number) {
  if (code.code != 0 || code == null) {
    return;
  }
  console.log('bluetooth serverSocket Number: ' + number);
  // The obtained clientNumber is used as the socket ID for subsequent read/write operations on the client.
  clientNumber = number;
}
let sppOption: bluetoothManager.SppOption = {uuid: '00001810-0000-1000-8000-00805F9B34FB', secure: false, type: 0};
try {
    bluetoothManager.sppConnect('XX:XX:XX:XX:XX:XX', sppOption, clientSocket);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.sppCloseServerSocket(deprecated)

sppCloseServerSocket(socket: number): void

Closes the listening socket of the server.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use socket.sppCloseServerSocket.

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
socket number Yes ID of the listening socket on the server. The ID is obtained by sppListen.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
let serverNumber = -1;
function serverSocket(code: BusinessError, number: number) {
  console.log('bluetooth error code: ' + code.code);
  if (code.code == 0) {
    console.log('bluetooth serverSocket Number: ' + number);
    serverNumber = number;
  }
}
try {
    bluetoothManager.sppCloseServerSocket(serverNumber);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.sppCloseClientSocket(deprecated)

sppCloseClientSocket(socket: number): void

Closes the client socket.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use socket.sppCloseClientSocket.

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
Name Type Mandatory Description
socket number Yes Client socket ID, which is obtained by sppAccept or sppConnect.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
let clientNumber = -1;
function clientSocket(code: BusinessError, number: number) {
  if (code.code != 0 || code == null) {
    return;
  }
  console.log('bluetooth serverSocket Number: ' + number);
  // The obtained clientNumber is used as the socket ID for subsequent read/write operations on the client.
  clientNumber = number;
}
try {
    bluetoothManager.sppCloseClientSocket(clientNumber);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.sppWrite(deprecated)

sppWrite(clientSocket: number, data: ArrayBuffer): void

Writes data to the remote device through the socket.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use socket.sppWrite.

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
clientSocket number Yes Client socket ID, which is obtained by sppAccept or sppConnect.
data ArrayBuffer Yes Data to write.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2901054 IO error.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
let clientNumber = -1;
function clientSocket(code: BusinessError, number: number) {
  if (code.code != 0 || code == null) {
    return;
  }
  console.log('bluetooth serverSocket Number: ' + number);
  // The obtained clientNumber is used as the socket ID for subsequent read/write operations on the client.
  clientNumber = number;
}
let arrayBuffer = new ArrayBuffer(8);
let data = new Uint8Array(arrayBuffer);
data[0] = 123;
try {
    bluetoothManager.sppWrite(clientNumber, arrayBuffer);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.on('sppRead')(deprecated)

on(type: "sppRead", clientSocket: number, callback: Callback<ArrayBuffer>): void

Subscribes to the SPP read request events.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use socket.on('sppRead').

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value sppRead indicates an SPP read request event.
clientSocket number Yes Client socket ID, which is obtained by sppAccept or sppConnect.
callback Callback<ArrayBuffer> Yes Callback invoked to return the data read.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2901054 IO error.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
let clientNumber = -1;
function clientSocket(code: BusinessError, number: number) {
  if (code.code != 0 || code == null) {
    return;
  }
  console.log('bluetooth serverSocket Number: ' + number);
  // The obtained clientNumber is used as the socket ID for subsequent read/write operations on the client.
  clientNumber = number;
}
function dataRead(dataBuffer: ArrayBuffer) {
  let data = new Uint8Array(dataBuffer);
  console.log('bluetooth data is: ' + data[0]);
}
try {
    bluetoothManager.on('sppRead', clientNumber, dataRead);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.off('sppRead')(deprecated)

off(type: "sppRead", clientSocket: number, callback?: Callback<ArrayBuffer>): void

Unsubscribes from the SPP read request events.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use socket.off('sppRead').

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value sppRead indicates an SPP read request event.
clientSocket number Yes Client socket ID, which is obtained by sppAccept or sppConnect.
callback Callback<ArrayBuffer> No Callback for the SPP read request event. If this parameter is not set, this method unsubscribes from all callbacks corresponding to type.

Example

import { BusinessError } from '@ohos.base';
let clientNumber = -1;
function clientSocket(code: BusinessError, number: number) {
  if (code.code != 0 || code == null) {
    return;
  }
  console.log('bluetooth serverSocket Number: ' + number);
  // The obtained clientNumber is used as the socket ID for subsequent read/write operations on the client.
  clientNumber = number;
}
try {
    bluetoothManager.off('sppRead', clientNumber);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.getProfileInstance(deprecated)

getProfileInstance(profileId: ProfileId): A2dpSourceProfile | HandsFreeAudioGatewayProfile | HidHostProfile | PanProfile

Obtains a profile instance. API version 9 is added with HidHostProfile and PanProfile.

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
profileId ProfileId Yes ID of the profile to obtain, for example, PROFILE_A2DP_SOURCE.

Return value

Type Description
A2dpSourceProfile, HandsFreeAudioGatewayProfile, HidHostProfile, or PanProfile Profile instance obtained, which can be A2dpSourceProfile, HandsFreeAudioGatewayProfile, HidHostProfile, or PanProfile.

Example

import { BusinessError } from '@ohos.base';
try {
    let hidHost: bluetoothManager.HidHostProfile = bluetoothManager.getProfileInstance(bluetoothManager.ProfileId.PROFILE_HID_HOST);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

bluetoothManager.BLE

createGattServer(deprecated)

createGattServer(): GattServer

Creates a GattServer instance.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.createGattServer.

System capability: SystemCapability.Communication.Bluetooth.Core

Return value

Type Description
GattServer GattServer instance created. Before using an API of this class, you must create a GattSever instance.

Example

let gattServer: bluetoothManager.GattServer  = bluetoothManager.BLE.createGattServer();

createGattClientDevice(deprecated)

createGattClientDevice(deviceId: string): GattClientDevice

Creates a GattClientDevice instance.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.createGattClientDevice.

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
deviceId string Yes Address of the remote device, for example, XX:XX:XX:XX:XX:XX.

Return value

Type Description
GattClientDevice GattClientDevice instance created. Before using an API of the client, you must create a GattClientDevice instance.

Example

import { BusinessError } from '@ohos.base';
try {
    let device: bluetoothManager.GattClientDevice = bluetoothManager.BLE.createGattClientDevice('XX:XX:XX:XX:XX:XX');
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

getConnectedBLEDevices(deprecated)

getConnectedBLEDevices(): Array<string>

Obtains the BLE devices connected to this device.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.getConnectedBLEDevices.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Return value

Type Description
Array<string> Addresses of the BLE devices connected to this device.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let result: Array<string>  = bluetoothManager.BLE.getConnectedBLEDevices();
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

startBLEScan(deprecated)

startBLEScan(filters: Array<ScanFilter>, options?: ScanOptions): void

Starts a BLE scan.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.startBLEScan.

Required permissions: ohos.permission.DISCOVER_BLUETOOTH, ohos.permission.MANAGE_BLUETOOTH, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
filters Array<ScanFilter> Yes Criteria for filtering the scan result. Set this parameter to null if you do not want to filter the scan result.
options ScanOptions No Scan options.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
function onReceiveEvent(data: Array<bluetoothManager.ScanResult>) {
    console.info('BLE scan device find result = '+ JSON.stringify(data));
}
try {
    bluetoothManager.BLE.on("BLEDeviceFind", onReceiveEvent);
    let scanfilter: bluetoothManager.ScanFilter = {
        deviceId:"XX:XX:XX:XX:XX:XX",
        name:"test",
        serviceUuid:"00001888-0000-1000-8000-00805f9b34fb"
    };
    let scanoptions: bluetoothManager.ScanOptions = {
        interval: 500,
        dutyMode: bluetoothManager.ScanDuty.SCAN_MODE_LOW_POWER,
        matchMode: bluetoothManager.MatchMode.MATCH_MODE_AGGRESSIVE,
    }
    bluetoothManager.BLE.startBLEScan([scanfilter], scanoptions);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

stopBLEScan(deprecated)

stopBLEScan(): void

Stops the BLE scan.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.startBLEScan.

Required permissions: ohos.permission.DISCOVER_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    bluetoothManager.BLE.stopBLEScan();
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

on('BLEDeviceFind')(deprecated)

on(type: "BLEDeviceFind", callback: Callback<Array<ScanResult>>): void

Subscribe to the BLE device discovery events.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.on('BLEDeviceFind').

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value BLEDeviceFind indicates an event reported when a BLE device is discovered.
callback Callback<Array<ScanResult>> Yes Callback invoked to return the discovered devices. You need to implement this callback.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
function onReceiveEvent(data: Array<bluetoothManager.ScanResult>) {
    console.info('bluetooth device find = '+ JSON.stringify(data));
}
try {
    bluetoothManager.BLE.on('BLEDeviceFind', onReceiveEvent);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

off('BLEDeviceFind')(deprecated)

off(type: "BLEDeviceFind", callback?: Callback<Array<ScanResult>>): void

Unsubscribes from the BLE device discovery events.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.off('BLEDeviceFind').

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value BLEDeviceFind indicates an event reported when a BLE device is discovered.
callback Callback<Array<ScanResult>> No Callback for the BLEDeviceFind event. If this parameter is not set, this method unsubscribes from all callbacks corresponding to type.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
function onReceiveEvent(data: Array<bluetoothManager.ScanResult>) {
    console.info('bluetooth device find = '+ JSON.stringify(data));
}
try {
    bluetoothManager.BLE.on('BLEDeviceFind', onReceiveEvent);
    bluetoothManager.BLE.off('BLEDeviceFind', onReceiveEvent);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

BaseProfile

Provides the profile base class.

getConnectionDevices(deprecated)

getConnectionDevices(): Array<string>

Obtains the connected devices.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use baseProfile.getConnectedDevices.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Return value

Type Description
Array<string> Addresses of the connected devices.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900004 Profile is not supported.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let a2dpSrc: bluetoothManager.A2dpSourceProfile = bluetoothManager.getProfileInstance(bluetoothManager.ProfileId.PROFILE_A2DP_SOURCE) as bluetoothManager.A2dpSourceProfile;
    let retArray: Array<string> = a2dpSrc.getConnectionDevices();
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

getDeviceState(deprecated)

getDeviceState(device: string): ProfileConnectionState

Obtains the connection state of the profile.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use baseProfile.getConnectionState.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
device string Yes Address of the target device.

Return value

Type Description
ProfileConnectionState Profile connection state obtained.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900004 Profile is not supported.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let a2dpSrc: bluetoothManager.A2dpSourceProfile = bluetoothManager.getProfileInstance(bluetoothManager.ProfileId.PROFILE_A2DP_SOURCE) as bluetoothManager.A2dpSourceProfile;
    let ret: bluetoothManager.ProfileConnectionState = a2dpSrc.getDeviceState('XX:XX:XX:XX:XX:XX');
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

A2dpSourceProfile

Before using an API of A2dpSourceProfile, you need to create an instance of this class by using getProfile().

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use a2dp.A2dpSourceProfile.

connect(deprecated)

connect(device: string): void

Sets up an Advanced Audio Distribution Profile (A2DP) connection.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use a2dp.A2dpSourceProfile#connect.

Required permissions: ohos.permission.DISCOVER_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
device string Yes Address of the target device.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900004 Profile is not supported.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let a2dpSrc: bluetoothManager.A2dpSourceProfile = bluetoothManager.getProfileInstance(bluetoothManager.ProfileId.PROFILE_A2DP_SOURCE) as bluetoothManager.A2dpSourceProfile;
    a2dpSrc.connect('XX:XX:XX:XX:XX:XX');
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

disconnect(deprecated)

disconnect(device: string): void

Disconnects an A2DP connection.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use a2dp.A2dpSourceProfile#disconnect.

Required permissions: ohos.permission.DISCOVER_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
device string Yes Address of the target device.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900004 Profile is not supported.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let a2dpSrc: bluetoothManager.A2dpSourceProfile = bluetoothManager.getProfileInstance(bluetoothManager.ProfileId.PROFILE_A2DP_SOURCE) as bluetoothManager.A2dpSourceProfile;
    a2dpSrc.disconnect('XX:XX:XX:XX:XX:XX');
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

on('connectionStateChange')(deprecated)

on(type: "connectionStateChange", callback: Callback<StateChangeParam>): void

Subscribes to the A2DP connection state changes.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use baseProfile.on('connectionStateChange').

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value connectionStateChange indicates a A2DP connection state change event.
callback Callback<StateChangeParam> Yes Callback invoked to return the A2DP connection state change event.

Return value

No value is returned.

Example

import { BusinessError } from '@ohos.base';
function onReceiveEvent(data: bluetoothManager.StateChangeParam) {
    console.info('a2dp state = '+ JSON.stringify(data));
}
try {
let a2dpSrc: bluetoothManager.A2dpSourceProfile = bluetoothManager.getProfileInstance(bluetoothManager.ProfileId.PROFILE_A2DP_SOURCE) as bluetoothManager.A2dpSourceProfile;
a2dpSrc.on('connectionStateChange', onReceiveEvent);
} catch (err) {
    console.error('errCode: ' + (err as BusinessError).code + ', errMessage: ' + (err as BusinessError).message);
}

off('connectionStateChange')(deprecated)

off(type: "connectionStateChange", callback?: Callback<StateChangeParam>): void

Unsubscribes from the A2DP connection state changes.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use baseProfile.off('connectionStateChange').

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value connectionStateChange indicates a A2DP connection state change event.
callback Callback<StateChangeParam> No Callback for the A2DP connection state change event.

Return value

No value is returned.

Example

import { BusinessError } from '@ohos.base';
function onReceiveEvent(data: bluetoothManager.StateChangeParam) {
    console.info('a2dp state = '+ JSON.stringify(data));
}
try {
let a2dpSrc: bluetoothManager.A2dpSourceProfile = bluetoothManager.getProfileInstance(bluetoothManager.ProfileId.PROFILE_A2DP_SOURCE) as bluetoothManager.A2dpSourceProfile;
a2dpSrc.on('connectionStateChange', onReceiveEvent);
a2dpSrc.off('connectionStateChange', onReceiveEvent);
} catch (err) {
    console.error('errCode: ' + (err as BusinessError).code + ', errMessage: ' + (err as BusinessError).message);
}

getPlayingState(deprecated)

getPlayingState(device: string): PlayingState

Obtains the playing state of a device.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use a2dp.A2dpSourceProfile#getPlayingState.

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
device string Yes Address of the target device.

Return value

Type Description
PlayingState Playing state of the remote device obtained.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900004 Profile is not supported.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let a2dpSrc: bluetoothManager.A2dpSourceProfile = bluetoothManager.getProfileInstance(bluetoothManager.ProfileId.PROFILE_A2DP_SOURCE) as bluetoothManager.A2dpSourceProfile;
    let state: bluetoothManager.PlayingState  = a2dpSrc.getPlayingState('XX:XX:XX:XX:XX:XX');
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

HandsFreeAudioGatewayProfile(deprecated)

Before using an API of HandsFreeAudioGatewayProfile, you need to create an instance of this class by using getProfile().

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use hfp.HandsFreeAudioGatewayProfile.

connect

connect(device: string): void

Sets up a Hands-free Profile (HFP) connection of a device.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use hfp.HandsFreeAudioGatewayProfile#connect.

Required permissions: ohos.permission.DISCOVER_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
device string Yes Address of the target device.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900004 Profile is not supported.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let hfpAg: bluetoothManager.HandsFreeAudioGatewayProfile = bluetoothManager.getProfileInstance(bluetoothManager.ProfileId.PROFILE_HANDS_FREE_AUDIO_GATEWAY) as bluetoothManager.HandsFreeAudioGatewayProfile;
    hfpAg.connect('XX:XX:XX:XX:XX:XX');
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

disconnect(deprecated)

disconnect(device: string): void

Disconnects the HFP connection of a device.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use hfp.HandsFreeAudioGatewayProfile#disconnect.

Required permissions: ohos.permission.DISCOVER_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
device string Yes Address of the target device.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900004 Profile is not supported.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let hfpAg: bluetoothManager.HandsFreeAudioGatewayProfile = bluetoothManager.getProfileInstance(bluetoothManager.ProfileId.PROFILE_HANDS_FREE_AUDIO_GATEWAY) as bluetoothManager.HandsFreeAudioGatewayProfile;
    hfpAg.disconnect('XX:XX:XX:XX:XX:XX');
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

on('connectionStateChange')(deprecated)

on(type: "connectionStateChange", callback: Callback<StateChangeParam>): void

Subscribes to the HFP connection state changes.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use baseProfile.on('connectionStateChange').

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value connectionStateChange indicates an HFP connection state change event.
callback Callback<StateChangeParam> Yes Callback invoked to return the HFP connection state change event.

Example

import { BusinessError } from '@ohos.base';
function onReceiveEvent(data: bluetoothManager.StateChangeParam) {
    console.info('hfp state = '+ JSON.stringify(data));
}
try {
let hfpAg: bluetoothManager.HandsFreeAudioGatewayProfile = bluetoothManager.getProfileInstance(bluetoothManager.ProfileId.PROFILE_HANDS_FREE_AUDIO_GATEWAY) as
  bluetoothManager.HandsFreeAudioGatewayProfile;
hfpAg.on('connectionStateChange', onReceiveEvent);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

off('connectionStateChange')(deprecated)

off(type: "connectionStateChange", callback?: Callback<StateChangeParam>): void

Unsubscribes from the HFP connection state changes.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use baseProfile.off('connectionStateChange').

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value connectionStateChange indicates an HFP connection state change event.
callback Callback<StateChangeParam> No Callback for the HFP connection state change event.

Example

import { BusinessError } from '@ohos.base';
function onReceiveEvent(data: bluetoothManager.StateChangeParam) {
    console.info('hfp state = '+ JSON.stringify(data));
}
try {
let hfpAg: bluetoothManager.HandsFreeAudioGatewayProfile = bluetoothManager.getProfileInstance(bluetoothManager.ProfileId.PROFILE_HANDS_FREE_AUDIO_GATEWAY) as
  bluetoothManager.HandsFreeAudioGatewayProfile;
hfpAg.on('connectionStateChange', onReceiveEvent);
hfpAg.off('connectionStateChange', onReceiveEvent);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

HidHostProfile(deprecated)

Before using an API of HidHostProfile, you need to create an instance of this class by using getProfile().

connect

connect(device: string): void

Connects to the HidHost service of a device.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use hid.HidHostProfile#connect.

System API: This is a system API.

Required permissions: ohos.permission.DISCOVER_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
device string Yes Address of the target device.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900004 Profile is not supported.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let hidHostProfile: bluetoothManager.HidHostProfile = bluetoothManager.getProfileInstance(bluetoothManager.ProfileId.PROFILE_HID_HOST) as bluetoothManager.HidHostProfile;
    hidHostProfile.connect('XX:XX:XX:XX:XX:XX');
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

disconnect(deprecated)

disconnect(device: string): void

Disconnects from the HidHost service of a device.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use hid.HidHostProfile#disconnect.

System API: This is a system API.

Required permissions: ohos.permission.DISCOVER_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
device string Yes Address of the target device.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900004 Profile is not supported.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let hidHostProfile: bluetoothManager.HidHostProfile = bluetoothManager.getProfileInstance(bluetoothManager.ProfileId.PROFILE_HID_HOST) as bluetoothManager.HidHostProfile;
    hidHostProfile.disconnect('XX:XX:XX:XX:XX:XX');
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

on('connectionStateChange')(deprecated)

on(type: "connectionStateChange", callback: Callback<StateChangeParam>): void

Subscribes to the HidHost connection state changes.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use baseProfile.on('connectionStateChange').

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value connectionStateChange indicates a HidHost connection state change event.
callback Callback<StateChangeParam> Yes Callback invoked to return the HidHost connection state change event.

Example

import { BusinessError } from '@ohos.base';
function onReceiveEvent(data: bluetoothManager.StateChangeParam) {
    console.info('hidHost state = '+ JSON.stringify(data));
}
try {
let hidHost: bluetoothManager.HidHostProfile = bluetoothManager.getProfileInstance(bluetoothManager.ProfileId.PROFILE_HID_HOST) as bluetoothManager.HidHostProfile;
hidHost.on('connectionStateChange', onReceiveEvent);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

off('connectionStateChange')(deprecated)

off(type: "connectionStateChange", callback?: Callback<StateChangeParam>): void

Unsubscribes from the HidHost connection state changes.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use baseProfile.off('connectionStateChange').

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value connectionStateChange indicates a HidHost connection state change event.
callback Callback<StateChangeParam> No Callback for the HidHost connection state change event.

Example

import { BusinessError } from '@ohos.base';
function onReceiveEvent(data: bluetoothManager.StateChangeParam) {
    console.info('hidHost state = '+ JSON.stringify(data));
}
try {
let hidHost: bluetoothManager.HidHostProfile = bluetoothManager.getProfileInstance(bluetoothManager.ProfileId.PROFILE_HID_HOST) as bluetoothManager.HidHostProfile;
hidHost.on('connectionStateChange', onReceiveEvent);
hidHost.off('connectionStateChange', onReceiveEvent);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

PanProfile

Before using an API of PanProfile, you need to create an instance of this class by using getProfile().

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use pan.PanProfile.

disconnect(deprecated)

disconnect(device: string): void

Disconnects from the Personal Area Network (PAN) service of a device.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use pan.PanProfile#disconnect.

System API: This is a system API.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
device string Yes Address of the target device.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900004 Profile is not supported.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let panProfile: bluetoothManager.PanProfile = bluetoothManager.getProfileInstance(bluetoothManager.ProfileId.PROFILE_PAN_NETWORK) as bluetoothManager.PanProfile;
    panProfile.disconnect('XX:XX:XX:XX:XX:XX');
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

on('connectionStateChange')(deprecated)

on(type: "connectionStateChange", callback: Callback<StateChangeParam>): void

Subscribes to the PAN connection state changes.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use baseProfile.on('connectionStateChange').

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value connectionStateChange indicates a PAN connection state change event.
callback Callback<StateChangeParam> Yes Callback invoked to return the PAN connection state change event.

Example

import { BusinessError } from '@ohos.base';
function onReceiveEvent(data: bluetoothManager.StateChangeParam) {
    console.info('pan state = '+ JSON.stringify(data));
}
try {
let panProfile: bluetoothManager.PanProfile = bluetoothManager.getProfileInstance(bluetoothManager.ProfileId.PROFILE_PAN_NETWORK) as bluetoothManager.PanProfile;
panProfile.on('connectionStateChange', onReceiveEvent);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

off('connectionStateChange')(deprecated)

off(type: "connectionStateChange", callback?: Callback<StateChangeParam>): void

Unsubscribes from the PAN connection state changes.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use baseProfile.off('connectionStateChange').

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value connectionStateChange indicates a PAN connection state change event.
callback Callback<StateChangeParam> No Callback for the PAN connection state change event.

Example

import { BusinessError } from '@ohos.base';
function onReceiveEvent(data: bluetoothManager.StateChangeParam) {
    console.info('pan state = '+ JSON.stringify(data));
}
try {
let panProfile: bluetoothManager.PanProfile = bluetoothManager.getProfileInstance(bluetoothManager.ProfileId.PROFILE_PAN_NETWORK) as bluetoothManager.PanProfile;
panProfile.on('connectionStateChange', onReceiveEvent);
panProfile.off('connectionStateChange', onReceiveEvent);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

setTethering(deprecated)

setTethering(enable: boolean): void

Sets tethering.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use pan.PanProfile#setTethering.

System API: This is a system API.

Required permissions: ohos.permission.DISCOVER_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
value boolean Yes Whether to set tethering over a Bluetooth PAN.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900004 Profile is not supported.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let panProfile: bluetoothManager.PanProfile = bluetoothManager.getProfileInstance(bluetoothManager.ProfileId.PROFILE_PAN_NETWORK) as bluetoothManager.PanProfile;
    panProfile.setTethering(true);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

isTetheringOn(deprecated)

isTetheringOn(): boolean

Obtains the network sharing status.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use pan.PanProfile#isTetheringOn.

System API: This is a system API.

System capability: SystemCapability.Communication.Bluetooth.Core

Return value

Type Description
boolean Returns true if tethering is available over a Bluetooth PAN; return false otherwise.

Example

import { BusinessError } from '@ohos.base';
try {
    let panProfile: bluetoothManager.PanProfile = bluetoothManager.getProfileInstance(bluetoothManager.ProfileId.PROFILE_PAN_NETWORK) as bluetoothManager.PanProfile;
    panProfile.isTetheringOn();
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

GattServer

Implements the Generic Attribute Profile (GATT) server. Before using an API of this class, you need to create a GattServer instance using createGattServer().

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattServer.

startAdvertising(deprecated)

startAdvertising(setting: AdvertiseSetting, advData: AdvertiseData, advResponse?: AdvertiseData): void

Starts BLE advertising.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.startAdvertising.

Required permissions: ohos.permission.DISCOVER_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
setting AdvertiseSetting Yes Settings related to BLE advertising.
advData AdvertiseData Yes Content of the BLE advertisement packet.
advResponse AdvertiseData No Response to the BLE scan request.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
let manufactureValueBuffer = new Uint8Array(4);
manufactureValueBuffer[0] = 1;
manufactureValueBuffer[1] = 2;
manufactureValueBuffer[2] = 3;
manufactureValueBuffer[3] = 4;

let serviceValueBuffer = new Uint8Array(4);
serviceValueBuffer[0] = 4;
serviceValueBuffer[1] = 6;
serviceValueBuffer[2] = 7;
serviceValueBuffer[3] = 8;
console.info('manufactureValueBuffer = '+ JSON.stringify(manufactureValueBuffer));
console.info('serviceValueBuffer = '+ JSON.stringify(serviceValueBuffer));
let gattServer = bluetoothManager.BLE.createGattServer();
try {
    let setting: bluetoothManager.AdvertiseSetting = {
        interval:150,
        txPower:0,
        connectable:true,
    };
    let manufactureDataUnit: bluetoothManager.ManufactureData = {
        manufactureId:4567,
        manufactureValue:manufactureValueBuffer.buffer
    };
    let serviceDataUnit: bluetoothManager.ServiceData = {
        serviceUuid:"00001888-0000-1000-8000-00805f9b34fb",
        serviceValue:serviceValueBuffer.buffer
    };
    let advData: bluetoothManager.AdvertiseData = {
        serviceUuids:["00001888-0000-1000-8000-00805f9b34fb"],
        manufactureData:[manufactureDataUnit],
        serviceData:[serviceDataUnit],
    };
    let advResponse: bluetoothManager.AdvertiseData = {
        serviceUuids:["00001888-0000-1000-8000-00805f9b34fb"],
        manufactureData:[manufactureDataUnit],
        serviceData:[serviceDataUnit],
    };
    gattServer.startAdvertising(setting, advData ,advResponse);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

stopAdvertising(deprecated)

stopAdvertising(): void

Stops BLE advertising.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.stopAdvertising.

Required permissions: ohos.permission.DISCOVER_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
let server = bluetoothManager.BLE.createGattServer();
try {
    server.stopAdvertising();
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

addService(deprecated)

addService(service: GattService): void

Adds a service to this GATT server.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattServer#addService.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
service GattService Yes Service to add. Settings related to BLE advertising.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
// Create descriptors.
let descriptors: Array<bluetoothManager.BLEDescriptor> = [];
let arrayBuffer = new ArrayBuffer(8);
let descV = new Uint8Array(arrayBuffer);
descV[0] = 11;
let descriptor: bluetoothManager.BLEDescriptor = {serviceUuid: '00001810-0000-1000-8000-00805F9B34FB',
    characteristicUuid: '00001820-0000-1000-8000-00805F9B34FB',
    descriptorUuid: '00002902-0000-1000-8000-00805F9B34FB', descriptorValue: arrayBuffer};
descriptors[0] = descriptor;

// Create characteristics.
let characteristics: Array<bluetoothManager.BLECharacteristic> = [];
let arrayBufferC = new ArrayBuffer(8);
let cccV = new Uint8Array(arrayBufferC);
cccV[0] = 1;
let characteristic: bluetoothManager.BLECharacteristic = {serviceUuid: '00001810-0000-1000-8000-00805F9B34FB',
    characteristicUuid: '00001820-0000-1000-8000-00805F9B34FB', characteristicValue: arrayBufferC, descriptors:descriptors};
let characteristicN: bluetoothManager.BLECharacteristic = {serviceUuid: '00001810-0000-1000-8000-00805F9B34FB',
    characteristicUuid: '00001821-0000-1000-8000-00805F9B34FB', characteristicValue: arrayBufferC, descriptors:descriptors};
characteristics[0] = characteristic;

// Create a gattService instance.
let gattService: bluetoothManager.GattService = {serviceUuid:'00001810-0000-1000-8000-00805F9B34FB', isPrimary: true, characteristics:characteristics, includeServices:[]};

let gattServer  = bluetoothManager.BLE.createGattServer();
try {
    gattServer.addService(gattService);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

removeService(deprecated)

removeService(serviceUuid: string): void

Removes a service from this GATT server.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattServer#removeService.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
serviceUuid string Yes Universally unique identifier (UUID) of the service to remove, for example, 00001810-0000-1000-8000-00805F9B34FB.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900004 Profile is not supported.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
let server = bluetoothManager.BLE.createGattServer();
try {
    server.removeService('00001810-0000-1000-8000-00805F9B34FB');
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

close(deprecated)

close(): void

Closes this GATT server to unregister it from the protocol stack. After this method is called, this GattServer cannot be used.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattServer#close.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
let server = bluetoothManager.BLE.createGattServer();
try {
    server.close();
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

notifyCharacteristicChanged(deprecated)

notifyCharacteristicChanged(deviceId: string, notifyCharacteristic: NotifyCharacteristic): void

Notifies the connected client device when a characteristic value changes.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattServer#notifyCharacteristicChanged.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
deviceId string Yes Address of the client that receives notifications, for example, XX:XX:XX:XX:XX:XX.
notifyCharacteristic NotifyCharacteristic Yes New characteristic value.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
// Create descriptors.
let descriptors: Array<bluetoothManager.BLEDescriptor> = [];
let arrayBuffer = new ArrayBuffer(8);
let descV = new Uint8Array(arrayBuffer);
descV[0] = 11;
let descriptor: bluetoothManager.BLEDescriptor = {serviceUuid: '00001810-0000-1000-8000-00805F9B34FB',
    characteristicUuid: '00001820-0000-1000-8000-00805F9B34FB',
    descriptorUuid: '00002902-0000-1000-8000-00805F9B34FB', descriptorValue: arrayBuffer};
descriptors[0] = descriptor;
let arrayBufferC = new ArrayBuffer(8);
let characteristic: bluetoothManager.BLECharacteristic = {serviceUuid: '00001810-0000-1000-8000-00805F9B34FB',
  characteristicUuid: '00001820-0000-1000-8000-00805F9B34FB', characteristicValue: arrayBufferC, descriptors:descriptors};
let notifyCharacteristic: bluetoothManager.NotifyCharacteristic = {serviceUuid: '00001810-0000-1000-8000-00805F9B34FB',
  characteristicUuid: '00001821-0000-1000-8000-00805F9B34FB', characteristicValue: characteristic.characteristicValue, confirm: false};
let server = bluetoothManager.BLE.createGattServer();
try {
    server.notifyCharacteristicChanged('XX:XX:XX:XX:XX:XX', notifyCharacteristic);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

sendResponse(deprecated)

sendResponse(serverResponse: ServerResponse): void

Sends a response to a read or write request from the GATT client.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattServer#sendResponse.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
serverResponse ServerResponse Yes Response returned by the GATT server.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
/* send response */
let arrayBufferCCC = new ArrayBuffer(8);
let cccValue = new Uint8Array(arrayBufferCCC);
cccValue[0] = 1123;
let serverResponse: bluetoothManager.ServerResponse = {
    deviceId: 'XX:XX:XX:XX:XX:XX',
    transId: 0,
    status: 0,
    offset: 0,
    value: arrayBufferCCC,
};

let gattServer = bluetoothManager.BLE.createGattServer();
try {
    gattServer.sendResponse(serverResponse);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

on('characteristicRead')(deprecated)

on(type: "characteristicRead", callback: Callback<CharacteristicReadRequest>): void

Subscribes to the characteristic read request events.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattServer#on('characteristicRead').

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value characteristicRead indicates a characteristic read request event.
callback Callback<CharacteristicReadRequest> Yes Callback invoked to return a characteristic read request event from the GATT client.

Example

import { BusinessError } from '@ohos.base';
let arrayBufferCCC = new ArrayBuffer(8);
let cccValue = new Uint8Array(arrayBufferCCC);
cccValue[0] = 1123;
function ReadCharacteristicReq(characteristicReadRequest: bluetoothManager.CharacteristicReadRequest) {
    let deviceId: string = characteristicReadRequest.deviceId;
    let transId: number = characteristicReadRequest.transId;
    let offset: number = characteristicReadRequest.offset;
    let characteristicUuid: string = characteristicReadRequest.characteristicUuid;

    let serverResponse: bluetoothManager.ServerResponse = {deviceId: deviceId, transId: transId, status: 0, offset: offset, value:arrayBufferCCC};

    try {
        gattServer.sendResponse(serverResponse);
    } catch (err) {
        console.error('errCode: ' + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
    }
}

let gattServer = bluetoothManager.BLE.createGattServer();
gattServer.on("characteristicRead", ReadCharacteristicReq);

off('characteristicRead')(deprecated)

off(type: "characteristicRead", callback?: Callback<CharacteristicReadRequest>): void

Unsubscribes from the characteristic read request events.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattServer#off('characteristicRead').

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value characteristicRead indicates a characteristic read request event.
callback Callback<CharacteristicReadRequest> No Callback for the characteristic read request event. If this parameter is not set, this method unsubscribes from all callbacks corresponding to type.

Example

import { BusinessError } from '@ohos.base';
try {
let gattServer = bluetoothManager.BLE.createGattServer();
gattServer.off("characteristicRead");
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

on('characteristicWrite')(deprecated)

on(type: "characteristicWrite", callback: Callback<CharacteristicWriteRequest>): void

Subscribes to the characteristic write request events.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattServer#on('characteristicWrite').

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value characteristicWrite indicates a characteristic write request event.
callback Callback<CharacteristicWriteRequest> Yes Callback invoked to return a characteristic write request from the GATT client.

Example

import { BusinessError } from '@ohos.base';
let arrayBufferCCC = new ArrayBuffer(8);
let cccValue = new Uint8Array(arrayBufferCCC);
function WriteCharacteristicReq(characteristicWriteRequest: bluetoothManager.CharacteristicWriteRequest) {
    let deviceId: string = characteristicWriteRequest.deviceId;
    let transId: number = characteristicWriteRequest.transId;
    let offset: number = characteristicWriteRequest.offset;
    let isPrep: boolean = characteristicWriteRequest.isPrep;
    let needRsp: boolean = characteristicWriteRequest.needRsp;
    let value: Uint8Array =  new Uint8Array(characteristicWriteRequest.value);
    let characteristicUuid: string = characteristicWriteRequest.characteristicUuid;

    cccValue[0] = value[0];
    let serverResponse: bluetoothManager.ServerResponse = {deviceId: deviceId, transId: transId, status: 0, offset: offset, value:arrayBufferCCC};

    try {
        gattServer.sendResponse(serverResponse);
    } catch (err) {
        console.error('errCode: ' + (err as BusinessError).code + ', errMessage: ' + (err as BusinessError).message);
    }
}

let gattServer = bluetoothManager.BLE.createGattServer();
gattServer.on("characteristicWrite", WriteCharacteristicReq);

off('characteristicWrite')(deprecated)

off(type: "characteristicWrite", callback?: Callback<CharacteristicWriteRequest>): void

Unsubscribes from the characteristic write request events.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattServer#off('characteristicWrite').

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value characteristicWrite indicates a characteristic write request event.
callback Callback<CharacteristicWriteRequest> No Callback for the characteristic write request event. If this parameter is not set, this method unsubscribes from all callbacks corresponding to type.

Example

import { BusinessError } from '@ohos.base';
try {
let gattServer = bluetoothManager.BLE.createGattServer();
gattServer.off("characteristicWrite");
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

on('descriptorRead')(deprecated)

on(type: "descriptorRead", callback: Callback<DescriptorReadRequest>): void

Subscribes to the descriptor read request events.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattServer#on('descriptorRead').

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value descriptorRead indicates a descriptor read request event.
callback Callback<DescriptorReadRequest> Yes Callback invoked to return a descriptor read request event from the GATT client.

Example

import { BusinessError } from '@ohos.base';
let arrayBufferDesc = new ArrayBuffer(8);
let descValue = new Uint8Array(arrayBufferDesc);
descValue[0] = 1101;
function ReadDescriptorReq(descriptorReadRequest: bluetoothManager.DescriptorReadRequest) {
    let deviceId: string = descriptorReadRequest.deviceId;
    let transId: number = descriptorReadRequest.transId;
    let offset: number = descriptorReadRequest.offset;
    let descriptorUuid: string = descriptorReadRequest.descriptorUuid;

    let serverResponse: bluetoothManager.ServerResponse = {deviceId: deviceId, transId: transId, status: 0, offset: offset, value:arrayBufferDesc};

    try {
        gattServer.sendResponse(serverResponse);
    } catch (err) {
        console.error('errCode: ' + (err as BusinessError).code + ', errMessage: ' + (err as BusinessError).message);
    }
}

let gattServer = bluetoothManager.BLE.createGattServer();
gattServer.on("descriptorRead", ReadDescriptorReq);

off('descriptorRead')(deprecated)

off(type: "descriptorRead", callback?: Callback<DescriptorReadRequest>): void

Unsubscribes from the descriptor read request events.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattServer#off('descriptorRead').

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value descriptorRead indicates a descriptor read request event.
callback Callback<DescriptorReadRequest> No Callback for the descriptor read request event. If this parameter is not set, this method unsubscribes from all callbacks corresponding to type.

Example

import { BusinessError } from '@ohos.base';
try {
let gattServer = bluetoothManager.BLE.createGattServer();
gattServer.off("descriptorRead");
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

on('descriptorWrite')(deprecated)

on(type: "descriptorWrite", callback: Callback<DescriptorWriteRequest>): void

Subscribes to the descriptor write request events.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattServer#on('descriptorWrite').

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value descriptorWrite indicates a descriptor write request event.
callback Callback<DescriptorWriteRequest> Yes Callback invoked to return a descriptor write request from the GATT client.

Example

import { BusinessError } from '@ohos.base';
let arrayBufferDesc = new ArrayBuffer(8);
let descValue = new Uint8Array(arrayBufferDesc);
function WriteDescriptorReq(descriptorWriteRequest: bluetoothManager.DescriptorWriteRequest) {
    let deviceId: string = descriptorWriteRequest.deviceId;
    let transId: number = descriptorWriteRequest.transId;
    let offset: number = descriptorWriteRequest.offset;
    let isPrep: boolean = descriptorWriteRequest.isPrep;
    let needRsp: boolean = descriptorWriteRequest.needRsp;
    let value: Uint8Array = new Uint8Array(descriptorWriteRequest.value);
    let descriptorUuid: string = descriptorWriteRequest.descriptorUuid;

    descValue[0] = value[0];
    let serverResponse: bluetoothManager.ServerResponse = {deviceId: deviceId, transId: transId, status: 0, offset: offset, value:arrayBufferDesc};

    try {
        gattServer.sendResponse(serverResponse);
    } catch (err) {
        console.error('errCode: ' + (err as BusinessError).code + ', errMessage: ' + (err as BusinessError).message);
    }
}

let gattServer = bluetoothManager.BLE.createGattServer();
gattServer.on("descriptorWrite", WriteDescriptorReq);

off('descriptorWrite')(deprecated)

off(type: "descriptorWrite", callback?: Callback<DescriptorWriteRequest>): void

Unsubscribes from the descriptor write request events.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattServer#off('descriptorWrite').

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value descriptorWrite indicates a descriptor write request event.
callback Callback<DescriptorWriteRequest> No Callback for the descriptor write request event. If this parameter is not set, this method unsubscribes from all callbacks corresponding to type.

Example

import { BusinessError } from '@ohos.base';
try {
let gattServer = bluetoothManager.BLE.createGattServer();
gattServer.off("descriptorWrite");
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

on('connectStateChange')(deprecated)

on(type: "connectStateChange", callback: Callback<BLEConnectChangedState>): void

Subscribes to the BLE connection state changes.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattServer#on('connectionStateChange').

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value connectStateChange indicates a BLE connection state change event.
callback Callback<BLEConnectChangedState> Yes Callback invoked to return the BLE connection state.

Example

import { BusinessError } from '@ohos.base';
function Connected(BLEConnectChangedState: bluetoothManager.BLEConnectChangedState) {
  let deviceId: string = BLEConnectChangedState.deviceId;
  let status: bluetoothManager.ProfileConnectionState  = BLEConnectChangedState.state;
}
try {
let gattServer = bluetoothManager.BLE.createGattServer();
gattServer.on("connectStateChange", Connected);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

off('connectStateChange')(deprecated)

off(type: "connectStateChange", callback?: Callback<BLEConnectChangedState>): void

Unsubscribes from the BLE connection state changes.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattServer#off('connectionStateChange').

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value connectStateChange indicates a BLE connection state change event.
callback Callback<BLEConnectChangedState> No Callback for the BLE connection state change event. If this parameter is not set, this method unsubscribes from all callbacks corresponding to type.

Example

import { BusinessError } from '@ohos.base';
try {
let gattServer = bluetoothManager.BLE.createGattServer();
gattServer.off("connectStateChange");
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

GattClientDevice

Implements the GATT client. Before using an API of this class, you must create a GattClientDevice instance using createGattClientDevice(deviceId: string).

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattClientDevice.

connect(deprecated)

connect(): void

Initiates a connection to the remote BLE device.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattClientDevice#connect.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let device = bluetoothManager.BLE.createGattClientDevice('XX:XX:XX:XX:XX:XX');
    device.connect();
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

disconnect(deprecated)

disconnect(): void

Disconnects from the remote BLE device.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattClientDevice#disconnect.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let device = bluetoothManager.BLE.createGattClientDevice('XX:XX:XX:XX:XX:XX');
    device.disconnect();
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

close(deprecated)

close(): void

Closes this GATT client to unregister it from the protocol stack. After this method is called, this GattClientDevice instance cannot be used.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattClientDevice#close.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900003 Bluetooth switch is off.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let device = bluetoothManager.BLE.createGattClientDevice('XX:XX:XX:XX:XX:XX');
    device.close();
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

getServices(deprecated)

getServices(callback: AsyncCallback<Array<GattService>>): void

Obtains all services of the remote BLE device. This API uses an asynchronous callback to return the result.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattClientDevice#getServices.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
callback AsyncCallback<Array<GattService>> Yes Callback invoked to return the services obtained.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
// Callback
function getServices(code: BusinessError, gattServices: Array<bluetoothManager.GattService>) {
  if (code.code == 0) {
      let services: Array<bluetoothManager.GattService> = gattServices;
      console.log('bluetooth code is ' + code.code);
      console.log("bluetooth services size is ", services.length);

      for (let i = 0; i < services.length; i++) {
        console.log('bluetooth serviceUuid is ' + services[i].serviceUuid);
      }
  }
}

try {
    let device = bluetoothManager.BLE.createGattClientDevice('XX:XX:XX:XX:XX:XX');
    device.connect();
    device.getServices(getServices);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

getServices(deprecated)

getServices(): Promise<Array<GattService>>

Obtains all services of the remote BLE device. This API uses a promise to return the result.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattClientDevice#getServices.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Return value

Type Description
Promise<Array<GattService>> Promise used to return the services obtained.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
// Promise
try {
    let device = bluetoothManager.BLE.createGattClientDevice('XX:XX:XX:XX:XX:XX');
    device.connect();
    device.getServices().then(result => {
        console.info("getServices successfully:" + JSON.stringify(result));
    });
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

readCharacteristicValue(deprecated)

readCharacteristicValue(characteristic: BLECharacteristic, callback: AsyncCallback<BLECharacteristic>): void

Reads the characteristic value of the specific service of the remote BLE device. This API uses an asynchronous callback to return the result.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattClientDevice#readCharacteristicValue.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
characteristic BLECharacteristic Yes Characteristic value to read.
callback AsyncCallback<BLECharacteristic> Yes Callback invoked to return the characteristic value read.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2901000 Read forbidden.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
function readCcc(code: BusinessError, BLECharacteristic: bluetoothManager.BLECharacteristic) {
    if (code.code != 0) {
        return;
    }
    console.log('bluetooth characteristic uuid: ' + BLECharacteristic.characteristicUuid);
    let value = new Uint8Array(BLECharacteristic.characteristicValue);
    console.log('bluetooth characteristic value: ' + value[0] +','+ value[1]+','+ value[2]+','+ value[3]);
}

let descriptors: Array<bluetoothManager.BLEDescriptor> = [];
let bufferDesc = new ArrayBuffer(8);
let descV = new Uint8Array(bufferDesc);
descV[0] = 11;
let descriptor: bluetoothManager.BLEDescriptor = {serviceUuid: '00001810-0000-1000-8000-00805F9B34FB',
    characteristicUuid: '00001820-0000-1000-8000-00805F9B34FB',
    descriptorUuid: '00002903-0000-1000-8000-00805F9B34FB', descriptorValue: bufferDesc};
descriptors[0] = descriptor;

let bufferCCC = new ArrayBuffer(8);
let cccV = new Uint8Array(bufferCCC);
cccV[0] = 1;
let characteristic: bluetoothManager.BLECharacteristic = {serviceUuid: '00001810-0000-1000-8000-00805F9B34FB',
    characteristicUuid: '00001820-0000-1000-8000-00805F9B34FB',
    characteristicValue: bufferCCC, descriptors:descriptors};

try {
    let device = bluetoothManager.BLE.createGattClientDevice('XX:XX:XX:XX:XX:XX');
    device.readCharacteristicValue(characteristic, readCcc);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

readCharacteristicValue(deprecated)

readCharacteristicValue(characteristic: BLECharacteristic): Promise<BLECharacteristic>

Reads the characteristic value of the specific service of the remote BLE device. This API uses an asynchronous callback to return the result.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattClientDevice#readCharacteristicValue.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
characteristic BLECharacteristic Yes Characteristic value to read.

Return value

Type Description
Promise<BLECharacteristic> Promise used to return the characteristic value read.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2901000 Read forbidden.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
let descriptors: Array<bluetoothManager.BLEDescriptor> = [];
let bufferDesc = new ArrayBuffer(8);
let descV = new Uint8Array(bufferDesc);
descV[0] = 11;
let descriptor: bluetoothManager.BLEDescriptor = {serviceUuid: '00001810-0000-1000-8000-00805F9B34FB',
    characteristicUuid: '00001820-0000-1000-8000-00805F9B34FB',
    descriptorUuid: '00002903-0000-1000-8000-00805F9B34FB', descriptorValue: bufferDesc};
descriptors[0] = descriptor;

let bufferCCC = new ArrayBuffer(8);
let cccV = new Uint8Array(bufferCCC);
cccV[0] = 1;
let characteristic: bluetoothManager.BLECharacteristic = {serviceUuid: '00001810-0000-1000-8000-00805F9B34FB',
    characteristicUuid: '00001820-0000-1000-8000-00805F9B34FB',
    characteristicValue: bufferCCC, descriptors:descriptors};

try {
    let device = bluetoothManager.BLE.createGattClientDevice('XX:XX:XX:XX:XX:XX');
    device.readCharacteristicValue(characteristic);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

readDescriptorValue(deprecated)

readDescriptorValue(descriptor: BLEDescriptor, callback: AsyncCallback<BLEDescriptor>): void

Reads the descriptor contained in the specific characteristic of the remote BLE device. This API uses an asynchronous callback to return the result.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattClientDevice#readDescriptorValue.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
descriptor BLEDescriptor Yes Descriptor to read.
callback AsyncCallback<BLEDescriptor> Yes Callback invoked to return the descriptor read.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2901000 Read forbidden.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
function readDesc(code: BusinessError, BLEDescriptor: bluetoothManager.BLEDescriptor) {
    if (code.code != 0) {
        return;
    }
    console.log('bluetooth descriptor uuid: ' + BLEDescriptor.descriptorUuid);
    let value = new Uint8Array(BLEDescriptor.descriptorValue);
    console.log('bluetooth descriptor value: ' + value[0] +','+ value[1]+','+ value[2]+','+ value[3]);
}

let bufferDesc = new ArrayBuffer(8);
let descV = new Uint8Array(bufferDesc);
descV[0] = 11;
let descriptor: bluetoothManager.BLEDescriptor = {
    serviceUuid: '00001810-0000-1000-8000-00805F9B34FB',
    characteristicUuid: '00001820-0000-1000-8000-00805F9B34FB',
    descriptorUuid: '00002903-0000-1000-8000-00805F9B34FB',
    descriptorValue: bufferDesc
};
try {
    let device = bluetoothManager.BLE.createGattClientDevice('XX:XX:XX:XX:XX:XX');
    device.readDescriptorValue(descriptor, readDesc);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

readDescriptorValue(deprecated)

readDescriptorValue(descriptor: BLEDescriptor): Promise<BLEDescriptor>

Reads the descriptor contained in the specific characteristic of the remote BLE device. This API uses an asynchronous callback to return the result.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattClientDevice#readDescriptorValue.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
descriptor BLEDescriptor Yes Descriptor to read.

Return value

Type Description
Promise<BLEDescriptor> Promise used to return the descriptor read.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2901000 Read forbidden.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
let bufferDesc = new ArrayBuffer(8);
let descV = new Uint8Array(bufferDesc);
descV[0] = 11;
let descriptor: bluetoothManager.BLEDescriptor = {
    serviceUuid: '00001810-0000-1000-8000-00805F9B34FB',
    characteristicUuid: '00001820-0000-1000-8000-00805F9B34FB',
    descriptorUuid: '00002903-0000-1000-8000-00805F9B34FB',
    descriptorValue: bufferDesc
};
try {
    let device = bluetoothManager.BLE.createGattClientDevice('XX:XX:XX:XX:XX:XX');
    device.readDescriptorValue(descriptor);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

writeCharacteristicValue(deprecated)

writeCharacteristicValue(characteristic: BLECharacteristic): void

Writes a characteristic value to the remote BLE device.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattClientDevice#writeCharacteristicValue.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
characteristic BLECharacteristic Yes Binary value and other parameters of the BLE device characteristic.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2901001 Write forbidden.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
let descriptors: Array<bluetoothManager.BLEDescriptor> = [];
let bufferDesc = new ArrayBuffer(8);
let descV = new Uint8Array(bufferDesc);
descV[0] = 11;
let descriptor: bluetoothManager.BLEDescriptor = {serviceUuid: '00001810-0000-1000-8000-00805F9B34FB',
    characteristicUuid: '00001820-0000-1000-8000-00805F9B34FB',
    descriptorUuid: '00002903-0000-1000-8000-00805F9B34FB', descriptorValue: bufferDesc};
descriptors[0] = descriptor;

let bufferCCC = new ArrayBuffer(8);
let cccV = new Uint8Array(bufferCCC);
cccV[0] = 1;
let characteristic: bluetoothManager.BLECharacteristic = {serviceUuid: '00001810-0000-1000-8000-00805F9B34FB',
    characteristicUuid: '00001820-0000-1000-8000-00805F9B34FB',
    characteristicValue: bufferCCC, descriptors:descriptors};
try {
    let device = bluetoothManager.BLE.createGattClientDevice('XX:XX:XX:XX:XX:XX');
    device.writeCharacteristicValue(characteristic);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

writeDescriptorValue(deprecated)

writeDescriptorValue(descriptor: BLEDescriptor): void

Writes binary data to the specific descriptor of the remote BLE device.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattClientDevice#writeCharacteristicValue.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
descriptor BLEDescriptor Yes Binary value and other parameters of the BLE device descriptor.
boolean Returns true if the operation is successful; returns false otherwise.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2901001 Write forbidden.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
let bufferDesc = new ArrayBuffer(8);
let descV = new Uint8Array(bufferDesc);
descV[0] = 22;
let descriptor: bluetoothManager.BLEDescriptor = {
    serviceUuid: '00001810-0000-1000-8000-00805F9B34FB',
    characteristicUuid: '00001820-0000-1000-8000-00805F9B34FB',
    descriptorUuid: '00002903-0000-1000-8000-00805F9B34FB',
    descriptorValue: bufferDesc
};
try {
    let device = bluetoothManager.BLE.createGattClientDevice('XX:XX:XX:XX:XX:XX');
    device.writeDescriptorValue(descriptor);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

setBLEMtuSize(deprecated)

setBLEMtuSize(mtu: number): void

Sets the maximum transmission unit (MTU) that can be transmitted between the GATT client and its remote BLE device. This API can be used only after a connection is set up by calling connect.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattClientDevice#setBLEMtuSize.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
mtu number Yes MTU to set, which ranges from 22 to 512 bytes.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
try {
    let device = bluetoothManager.BLE.createGattClientDevice('XX:XX:XX:XX:XX:XX');
    device.setBLEMtuSize(128);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

setNotifyCharacteristicChanged(deprecated)

setNotifyCharacteristicChanged(characteristic: BLECharacteristic, enable: boolean): void

Sets the function of notifying the GATT client when the characteristic value of the remote BLE device changes.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattClientDevice#setCharacteristicChangeNotification.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
characteristic BLECharacteristic Yes BLE characteristic to listen for.
enable boolean Yes Whether to enable the notify function. The value true means to enable the notify function, and the value false means the opposite.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
// Create descriptors.
let descriptors: Array<bluetoothManager.BLEDescriptor> = [];
let bufferDesc = new ArrayBuffer(8);
let descV = new Uint8Array(bufferDesc);
descV[0] = 11;
let descriptor: bluetoothManager.BLEDescriptor = {serviceUuid: '00001810-0000-1000-8000-00805F9B34FB',
    characteristicUuid: '00001820-0000-1000-8000-00805F9B34FB',
    descriptorUuid: '00002903-0000-1000-8000-00805F9B34FB', descriptorValue: bufferDesc};
descriptors[0] = descriptor;

let bufferCCC = new ArrayBuffer(8);
let cccV = new Uint8Array(bufferCCC);
cccV[0] = 1;
let characteristic: bluetoothManager.BLECharacteristic = {serviceUuid: '00001810-0000-1000-8000-00805F9B34FB',
    characteristicUuid: '00001820-0000-1000-8000-00805F9B34FB',
    characteristicValue: bufferCCC, descriptors:descriptors};
try {
    let device = bluetoothManager.BLE.createGattClientDevice('XX:XX:XX:XX:XX:XX');
    device.setNotifyCharacteristicChanged(characteristic, false);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

on('BLECharacteristicChange')(deprecated)

on(type: "BLECharacteristicChange", callback: Callback<BLECharacteristic>): void

Subscribes to the BLE characteristic changes. The client can receive a notification from the server only after the setNotifyCharacteristicChanged method is called.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattClientDevice#on('BLECharacteristicChange').

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value BLECharacteristicChange indicates a characteristic value change event.
callback Callback<BLECharacteristic> Yes Callback invoked to return the characteristic value changes.

Example

import { BusinessError } from '@ohos.base';
function CharacteristicChange(characteristicChangeReq: ble.BLECharacteristic) {
    let serviceUuid: string = characteristicChangeReq.serviceUuid;
    let characteristicUuid: string = characteristicChangeReq.characteristicUuid;
    let value: Uint8Array = new Uint8Array(characteristicChangeReq.characteristicValue);
}
try {
    let device = bluetoothManager.BLE.createGattClientDevice('XX:XX:XX:XX:XX:XX');
    device.on('BLECharacteristicChange', CharacteristicChange);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

off('BLECharacteristicChange')(deprecated)

off(type: "BLECharacteristicChange", callback?: Callback<BLECharacteristic>): void

Unsubscribes from the BLE characteristic changes.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattClientDevice#off('BLECharacteristicChange').

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value BLECharacteristicChange indicates a characteristic value change event.
callback Callback<BLECharacteristic> No Callback for the characteristic value change event. If this parameter is not set, this method unsubscribes from all callbacks corresponding to type.

Example

import { BusinessError } from '@ohos.base';
try {
    let device = bluetoothManager.BLE.createGattClientDevice('XX:XX:XX:XX:XX:XX');
    device.off('BLECharacteristicChange');
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

on('BLEConnectionStateChange')(deprecated)

on(type: "BLEConnectionStateChange", callback: Callback<BLEConnectChangedState>): void

Subscribes to the BLE connection state changes.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattClientDevice#on('BLEConnectionStateChange').

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value BLEConnectionStateChange indicates a BLE connection state change event.
callback Callback<BLEConnectChangedState> Yes Callback invoked to return the BLE connection state.

Example

import { BusinessError } from '@ohos.base';
function ConnectStateChanged(state: bluetoothManager.BLEConnectChangedState) {
    console.log('bluetooth connect state changed');
    let connectState: bluetoothManager.ProfileConnectionState = state.state;
}
try {
    let device = bluetoothManager.BLE.createGattClientDevice('XX:XX:XX:XX:XX:XX');
    device.on('BLEConnectionStateChange', ConnectStateChanged);
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

off('BLEConnectionStateChange')(deprecated)

off(type: "BLEConnectionStateChange", callback?: Callback<BLEConnectChangedState>): void

Unsubscribes from the BLE connection state changes.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattClientDevice#off('BLEConnectionStateChange').

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
type string Yes Event type. The value BLEConnectionStateChange indicates a BLE connection state change event.
callback Callback<BLEConnectChangedState> No Callback for the BLE connection state change event. If this parameter is not set, this method unsubscribes from all callbacks corresponding to type.

Example

import { BusinessError } from '@ohos.base';
try {
    let device = bluetoothManager.BLE.createGattClientDevice('XX:XX:XX:XX:XX:XX');
    device.off('BLEConnectionStateChange');
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

getDeviceName(deprecated)

getDeviceName(callback: AsyncCallback<string>): void

Obtains the name of the remote BLE device. This API uses an asynchronous callback to return the result.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattClientDevice#getDeviceName.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
callback AsyncCallback<string> Yes Callback invoked to return the remote BLE device name obtained.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
// callback
try {
    let gattClient = bluetoothManager.BLE.createGattClientDevice("XX:XX:XX:XX:XX:XX");
    gattClient.connect();
    let deviceName = gattClient.getDeviceName((err, data)=> {
        console.info('device name err ' + JSON.stringify(err));
        console.info('device name' + JSON.stringify(data));
    })
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

getDeviceName(deprecated)

getDeviceName(): Promise<string>

Obtains the name of the remote BLE device. This API uses a promise to return the result.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattClientDevice#getDeviceName.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Return value

Type Description
Promise<string> Promise used to return the remote BLE device name.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900001 Service stopped.
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
// promise
try {
    let gattClient = bluetoothManager.BLE.createGattClientDevice("XX:XX:XX:XX:XX:XX");
    gattClient.connect();
    let deviceName = gattClient.getDeviceName().then((data) => {
        console.info('device name' + JSON.stringify(data));
    })
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

getRssiValue(deprecated)

getRssiValue(callback: AsyncCallback<number>): void

Obtains the received signal strength indication (RSSI) of the remote BLE device. This API uses an asynchronous callback to return the result. It can be used only after a connection is set up by calling connect.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattClientDevice#getRssiValue.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Parameters

Name Type Mandatory Description
callback AsyncCallback<number> Yes Callback invoked to return the RSSI, in dBm.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
// callback
try {
    let gattClient = bluetoothManager.BLE.createGattClientDevice("XX:XX:XX:XX:XX:XX");
    gattClient.connect();
    let rssi = gattClient.getRssiValue((err: BusinessError, data: number)=> {
        console.info('rssi err ' + JSON.stringify(err));
        console.info('rssi value' + JSON.stringify(data));
    })
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

getRssiValue(deprecated)

getRssiValue(): Promise<number>

Obtains the RSSI of the remote BLE device. This API uses a promise to return the result. It can be used only after a connection is set up by calling connect.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattClientDevice#getRssiValue.

Required permissions: ohos.permission.USE_BLUETOOTH

System capability: SystemCapability.Communication.Bluetooth.Core

Return value

Type Description
Promise<number> Promise used to return the RSSI, in dBm.

Error codes

For details about the error codes, see Bluetooth Error Codes.

ID Error Message
2900099 Operation failed.

Example

import { BusinessError } from '@ohos.base';
// promise
try {
    let gattClient = bluetoothManager.BLE.createGattClientDevice("XX:XX:XX:XX:XX:XX");
    let rssi = gattClient.getRssiValue().then((data: number) => {
        console.info('rssi' + JSON.stringify(data));
    })
} catch (err) {
    console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message);
}

ScanMode(deprecated)

Enumerates the scan modes.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.ScanMode.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Value Description
SCAN_MODE_NONE 0 No scan mode.
SCAN_MODE_CONNECTABLE 1 Connectable mode.
SCAN_MODE_GENERAL_DISCOVERABLE 2 General discoverable mode.
SCAN_MODE_LIMITED_DISCOVERABLE 3 Limited discoverable mode.
SCAN_MODE_CONNECTABLE_GENERAL_DISCOVERABLE 4 General connectable and discoverable mode.
SCAN_MODE_CONNECTABLE_LIMITED_DISCOVERABLE 5 Limited connectable and discoverable mode.

BondState(deprecated)

Enumerates the pairing states.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.BondState.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Value Description
BOND_STATE_INVALID 0 Invalid pairing.
BOND_STATE_BONDING 1 Pairing.
BOND_STATE_BONDED 2 Paired.

SppOption(deprecated)

Defines the SPP configuration parameters.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use socket.SppOption.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Type Readable Writable Description
uuid string Yes Yes UUID of the SPP.
secure boolean Yes Yes Whether it is a secure channel.
type SppType Yes Yes Type of the SPP link.

SppType(deprecated)

Enumerates the SPP link types.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use socket.SppType.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Value Description
SPP_RFCOMM 0 Radio frequency communication (RFCOMM) link type.

GattService(deprecated)

Defines the GATT service API parameters.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.GattService.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Type Readable Writable Description
serviceUuid string Yes Yes UUID of the service, for example, 00001888-0000-1000-8000-00805f9b34fb.
isPrimary boolean Yes Yes Whether the service is a primary service. The value true means a primary service.
characteristics Array<BLECharacteristic> Yes Yes List of characteristics of the service.
includeServices Array<GattService> Yes Yes Services on which the service depends.

BLECharacteristic(deprecated)

Defines the characteristic API parameters.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.BLECharacteristic.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Type Readable Writable Description
serviceUuid string Yes Yes UUID of the service, for example, 00001888-0000-1000-8000-00805f9b34fb.
characteristicUuid string Yes Yes UUID of the characteristic, for example, 00002a11-0000-1000-8000-00805f9b34fb.
characteristicValue ArrayBuffer Yes Yes Binary value of the characteristic.
descriptors Array<BLEDescriptor> Yes Yes List of descriptors of the characteristic.

BLEDescriptor(deprecated)

Defines the descriptor API parameters.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.BLEDescriptor.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Type Readable Writable Description
serviceUuid string Yes Yes UUID of the service, for example, 00001888-0000-1000-8000-00805f9b34fb.
characteristicUuid string Yes Yes UUID of the characteristic, for example, 00002a11-0000-1000-8000-00805f9b34fb.
descriptorUuid string Yes Yes UUID of the descriptor, for example, 00002902-0000-1000-8000-00805f9b34fb.
descriptorValue ArrayBuffer Yes Yes Binary value of the descriptor.

NotifyCharacteristic(deprecated)

Defines the parameters in the notifications sent when the server characteristic value changes.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.NotifyCharacteristic.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Type Readable Writable Description
serviceUuid string Yes Yes UUID of the service, for example, 00001888-0000-1000-8000-00805f9b34fb.
characteristicUuid string Yes Yes UUID of the characteristic, for example, 00002a11-0000-1000-8000-00805f9b34fb.
characteristicValue ArrayBuffer Yes Yes Binary value of the characteristic.
confirm boolean Yes Yes Whether the notification needs to be confirmed by the remote end. For a notification, set it to true. In this case, the remote end must confirm the receipt of the notification. For an indication, set it to false. In this case, the remote end does not need to confirm the receipt of the notification.

CharacteristicReadRequest(deprecated)

Defines the parameters of the CharacteristicReadReq event received by the server.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.CharacteristicReadRequest.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Type Readable Writable Description
deviceId string Yes No Address of the remote device that sends the CharacteristicReadReq event, for example, XX:XX:XX:XX:XX:XX.
transId number Yes No Transmission ID of the read request. The response returned by the server must use the same transmission ID.
offset number Yes No Position from which the characteristic value is read. For example, k means to read from the kth byte. The response returned by the server must use the same offset.
characteristicUuid string Yes No UUID of the characteristic, for example, 00002a11-0000-1000-8000-00805f9b34fb.
serviceUuid string Yes No UUID of the service, for example, 00001888-0000-1000-8000-00805f9b34fb.

CharacteristicWriteRequest(deprecated)

Defines the parameters of the CharacteristicWriteReq event received by the server.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.CharacteristicWriteRequest.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Type Readable Writable Description
deviceId string Yes No Address of the remote device that sends the CharacteristicWriteReq event, for example, XX:XX:XX:XX:XX:XX.
transId number Yes No Transmission ID of the write request. The response returned by the server must use the same transmission ID.
offset number Yes No Start position for writing the characteristic value. For example, k means to write from the kth byte. The response returned by the server must use the same offset.
descriptorUuid string Yes No UUID of the descriptor, for example, 00002902-0000-1000-8000-00805f9b34fb.
characteristicUuid string Yes No UUID of the characteristic, for example, 00002a11-0000-1000-8000-00805f9b34fb.
serviceUuid string Yes No UUID of the service, for example, 00001888-0000-1000-8000-00805f9b34fb.

DescriptorReadRequest(deprecated)

Defines the parameters of the DescriptorReadReq event received by the server.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.DescriptorReadRequest.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Type Readable Writable Description
deviceId string Yes No Address of the remote device that sends a DescriptorReadReq event, for example, XX:XX:XX:XX:XX:XX.
transId number Yes No Transmission ID of the read request. The response returned by the server must use the same transmission ID.
offset number Yes No Position from which the descriptor is read. For example, k means to read from the kth byte. The response returned by the server must use the same offset.
descriptorUuid string Yes No UUID of the descriptor, for example, 00002902-0000-1000-8000-00805f9b34fb.
characteristicUuid string Yes No UUID of the characteristic, for example, 00002a11-0000-1000-8000-00805f9b34fb.
serviceUuid string Yes No UUID of the service, for example, 00001888-0000-1000-8000-00805f9b34fb.

DescriptorWriteRequest(deprecated)

Defines the parameters of the DescriptorWriteReq event received by the server.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.DescriptorWriteRequest.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Type Readable Writable Description
deviceId string Yes No Address of the remote device that sends a DescriptorWriteReq event, for example, XX:XX:XX:XX:XX:XX.
transId number Yes No Transmission ID of the write request. The response returned by the server must use the same transmission ID.
offset number Yes No Start position for writing the descriptor. For example, k means to write from the kth byte. The response returned by the server must use the same offset.
isPrep boolean Yes No Whether the write request is executed immediately.
needRsp boolean Yes No Whether to send a response to the GATT client.
value ArrayBuffer Yes No Binary value of the descriptor to write.
descriptorUuid string Yes No UUID of the descriptor, for example, 00002902-0000-1000-8000-00805f9b34fb.
characteristicUuid string Yes No UUID of the characteristic, for example, 00002a11-0000-1000-8000-00805f9b34fb.
serviceUuid string Yes No UUID of the service, for example, 00001888-0000-1000-8000-00805f9b34fb.

ServerResponse(deprecated)

Defines the parameters of the server's response to the GATT client's read/write request.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.ServerResponse.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Type Readable Writable Description
deviceId string Yes No Address of the remote device, for example, XX:XX:XX:XX:XX:XX.
transId number Yes No Transmission ID of the request. The value must be the same as the ID carried in the read/write request received.
status number Yes No Response state. Set this parameter to 0, which indicates a normal response.
offset number Yes No Start read/write position. The value must be the same as the offset carried in the read/write request.
value ArrayBuffer Yes No Binary data in the response.

BLEConnectChangedState(deprecated)

Defines the parameters of BLEConnectChangedState.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use BLEConnectionChangeState.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Type Readable Writable Description
deviceId string Yes No Address of the remote device, for example, XX:XX:XX:XX:XX:XX.
state ProfileConnectionState Yes Yes BLE connection state.

ProfileConnectionState(deprecated)

Enumerates the profile connection states.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use constant.ProfileConnectionState.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Value Description
STATE_DISCONNECTED 0 Disconnected.
STATE_CONNECTING 1 Connecting.
STATE_CONNECTED 2 Connected.
STATE_DISCONNECTING 3 Disconnecting.

ScanFilter(deprecated)

Defines the scan filter parameters.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.ScanFilter.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Type Readable Writable Description
deviceId string Yes Yes Address of the BLE device to filter, for example, XX:XX:XX:XX:XX:XX.
name string Yes Yes Name of the BLE device to filter.
serviceUuid string Yes Yes Service UUID of the device to filter, for example, 00001888-0000-1000-8000-00805f9b34fb.
serviceUuidMask string Yes Yes Service UUID mask of the device to filter, for example, FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF.
serviceSolicitationUuid string Yes Yes Service solicitation UUID of the device to filter, for example, 00001888-0000-1000-8000-00805F9B34FB.
serviceSolicitationUuidMask string Yes Yes Service solicitation UUID mask of the device to filter, for example, FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF.
serviceData ArrayBuffer Yes Yes Service data of the device to filter, for example, [0x90, 0x00, 0xF1, 0xF2].
serviceDataMask ArrayBuffer Yes Yes Service data mask of the device to filter, for example, [0xFF,0xFF,0xFF,0xFF].
manufactureId number Yes Yes Manufacturer ID of the device to filter, for example, 0x0006.
manufactureData ArrayBuffer Yes Yes Manufacturer data of the device to filter, for example, [0x1F,0x2F,0x3F].
manufactureDataMask ArrayBuffer Yes Yes Manufacturer data mask of the device to filter, for example, [0xFF, 0xFF, 0xFF].

ScanOptions(deprecated)

Defines the scan configuration parameters.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.ScanOptions.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Type Readable Writable Description
interval number Yes Yes Delay in reporting the scan result. The default value is 0.
dutyMode ScanDuty Yes Yes Scan duty. The default value is SCAN_MODE_LOW_POWER.
matchMode MatchMode Yes Yes Hardware filtering match mode. The default value is MATCH_MODE_AGGRESSIVE.

ScanDuty(deprecated)

Enumerates the scan duty options.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.ScanDuty.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Value Description
SCAN_MODE_LOW_POWER 0 Low-power mode, which is the default value.
SCAN_MODE_BALANCED 1 Balanced mode.
SCAN_MODE_LOW_LATENCY 2 Low-latency mode.

MatchMode(deprecated)

Enumerates the hardware match modes of BLE scan filters.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.MatchMode.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Value Description
MATCH_MODE_AGGRESSIVE 1 Hardware reports the scan result with a lower threshold of signal strength and few number of matches in a duration. This is the default value.
MATCH_MODE_STICKY 2 Hardware reports the scan result with a higher threshold of signal strength and sightings.

ScanResult(deprecated)

Defines the scan result.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.ScanResult.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Type Readable Writable Description
deviceId string Yes No Address of the scanned device, for example, XX:XX:XX:XX:XX:XX.
rssi number Yes No RSSI of the device.
data ArrayBuffer Yes No Advertisement packets sent by the device.

BluetoothState(deprecated)

Enumerates the Bluetooth states.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use access.BluetoothState.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Value Description
STATE_OFF 0 Bluetooth is turned off.
STATE_TURNING_ON 1 Bluetooth is being turned on.
STATE_ON 2 Bluetooth is turned on.
STATE_TURNING_OFF 3 Bluetooth is being turned off.
STATE_BLE_TURNING_ON 4 The LE-only mode is being turned on for Bluetooth.
STATE_BLE_ON 5 Bluetooth is in LE-only mode.
STATE_BLE_TURNING_OFF 6 The LE-only mode is being turned off for Bluetooth.

AdvertiseSetting(deprecated)

Defines the BLE advertising parameters.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.AdvertiseSetting.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Type Readable Writable Description
interval number Yes Yes Interval for BLE advertising. The minimum value is 32 slots (20 ms). The maximum value is 16384 slots. The default value is 1600 slots (1s).
txPower number Yes Yes Transmit power, in dBm. The value range is -127 to 1. The default value is -7.
connectable boolean Yes Yes Whether the advertisement is connectable. The default value is true.

AdvertiseData(deprecated)

Defines the content of a BLE advertisement packet.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.AdvertiseData.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Type Readable Writable Description
serviceUuids Array<string> Yes Yes List of service UUIDs to broadcast.
manufactureData Array<ManufactureData> Yes Yes List of manufacturers to broadcast.
serviceData Array<ServiceData> Yes Yes List of service data to broadcast.

ManufactureData(deprecated)

Defines the content of a BLE advertisement packet.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.ManufactureData.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Type Readable Writable Description
manufactureId number Yes Yes Manufacturer ID allocated by the Bluetooth SIG.
manufactureValue ArrayBuffer Yes Yes Manufacturer data.

ServiceData(deprecated)

Defines the service data contained in an advertisement packet.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use ble.ServiceData.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Type Readable Writable Description
serviceUuid string Yes Yes Service UUID.
serviceValue ArrayBuffer Yes Yes Service data.

PinRequiredParam(deprecated)

Defines the pairing request parameters.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.PinRequiredParam.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Type Readable Writable Description
deviceId string Yes No ID of the device to pair.
pinCode string Yes No Key for the device pairing.

BondStateParam(deprecated)

Defines the pairing state parameters.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.BondStateParam.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Type Readable Writable Description
deviceId string Yes No ID of the device to pair.
state BondState Yes No State of the device.

StateChangeParam(deprecated)

Defines the profile state change parameters.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use baseProfile.StateChangeParam.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Type Readable Writable Description
deviceId string Yes No Address of a Bluetooth device.
state ProfileConnectionState Yes No Profile connection state of the device.

DeviceClass(deprecated)

Defines the class of a Bluetooth device.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use connection.DeviceClass.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Type Readable Writable Description
majorClass MajorClass Yes No Major classes of Bluetooth devices.
majorMinorClass MajorMinorClass Yes No Major and minor classes of Bluetooth devices.
classOfDevice number Yes No Class of the device.

MajorClass(deprecated)

Enumerates the major classes of Bluetooth devices.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use constant.MajorClass.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Value Description
MAJOR_MISC 0x0000 Miscellaneous device.
MAJOR_COMPUTER 0x0100 Computer.
MAJOR_PHONE 0x0200 Mobile phone.
MAJOR_NETWORKING 0x0300 Network device.
MAJOR_AUDIO_VIDEO 0x0400 Audio or video device.
MAJOR_PERIPHERAL 0x0500 Peripheral device.
MAJOR_IMAGING 0x0600 Imaging device.
MAJOR_WEARABLE 0x0700 Wearable device.
MAJOR_TOY 0x0800 Toy.
MAJOR_HEALTH 0x0900 Health device.
MAJOR_UNCATEGORIZED 0x1F00 Unclassified device.

MajorMinorClass(deprecated)

Enumerates the major and minor classes of Bluetooth devices.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use constant.MajorMinorClass.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Value Description
COMPUTER_UNCATEGORIZED 0x0100 Unclassified computer.
COMPUTER_DESKTOP 0x0104 Desktop computer.
COMPUTER_SERVER 0x0108 Server.
COMPUTER_LAPTOP 0x010C Laptop.
COMPUTER_HANDHELD_PC_PDA 0x0110 Hand-held computer.
COMPUTER_PALM_SIZE_PC_PDA 0x0114 Palmtop computer.
COMPUTER_WEARABLE 0x0118 Wearable computer.
COMPUTER_TABLET 0x011C Tablet.
PHONE_UNCATEGORIZED 0x0200 Unclassified mobile phone.
PHONE_CELLULAR 0x0204 Portable phone.
PHONE_CORDLESS 0x0208 Cordless phone.
PHONE_SMART 0x020C Smartphone.
PHONE_MODEM_OR_GATEWAY 0x0210 Modem or gateway phone.
PHONE_ISDN 0x0214 ISDN phone.
NETWORK_FULLY_AVAILABLE 0x0300 Device with network fully available.
NETWORK_1_TO_17_UTILIZED 0x0320 Device used on network 1 to 17.
NETWORK_17_TO_33_UTILIZED 0x0340 Device used on network 17 to 33.
NETWORK_33_TO_50_UTILIZED 0x0360 Device used on network 33 to 50.
NETWORK_60_TO_67_UTILIZED 0x0380 Device used on network 60 to 67.
NETWORK_67_TO_83_UTILIZED 0x03A0 Device used on network 67 to 83.
NETWORK_83_TO_99_UTILIZED 0x03C0 Device used on network 83 to 99.
NETWORK_NO_SERVICE 0x03E0 Device without network service
AUDIO_VIDEO_UNCATEGORIZED 0x0400 Unclassified audio or video device.
AUDIO_VIDEO_WEARABLE_HEADSET 0x0404 Wearable audio or video headset.
AUDIO_VIDEO_HANDSFREE 0x0408 Hands-free audio or video device.
AUDIO_VIDEO_MICROPHONE 0x0410 Audio or video microphone.
AUDIO_VIDEO_LOUDSPEAKER 0x0414 Audio or video loudspeaker.
AUDIO_VIDEO_HEADPHONES 0x0418 Audio or video headphones.
AUDIO_VIDEO_PORTABLE_AUDIO 0x041C Portable audio or video device.
AUDIO_VIDEO_CAR_AUDIO 0x0420 In-vehicle audio or video device.
AUDIO_VIDEO_SET_TOP_BOX 0x0424 Audio or video STB device.
AUDIO_VIDEO_HIFI_AUDIO 0x0428 High-fidelity speaker device.
AUDIO_VIDEO_VCR 0x042C Video cassette recording (VCR) device.
AUDIO_VIDEO_VIDEO_CAMERA 0x0430 Camera.
AUDIO_VIDEO_CAMCORDER 0x0434 Camcorder
AUDIO_VIDEO_VIDEO_MONITOR 0x0438 Audio or video monitor.
AUDIO_VIDEO_VIDEO_DISPLAY_AND_LOUDSPEAKER 0x043C Video display or loudspeaker.
AUDIO_VIDEO_VIDEO_CONFERENCING 0x0440 Video conferencing device.
AUDIO_VIDEO_VIDEO_GAMING_TOY 0x0448 Audio or video gaming toy.
PERIPHERAL_NON_KEYBOARD_NON_POINTING 0x0500 Non-keyboard or non-pointing peripheral device.
PERIPHERAL_KEYBOARD 0x0540 Keyboard device.
PERIPHERAL_POINTING_DEVICE 0x0580 Pointing peripheral device.
PERIPHERAL_KEYBOARD_POINTING 0x05C0 Keyboard pointing device.
PERIPHERAL_UNCATEGORIZED 0x0500 Unclassified peripheral device.
PERIPHERAL_JOYSTICK 0x0504 Peripheral joystick.
PERIPHERAL_GAMEPAD 0x0508 Peripheral game pad
PERIPHERAL_REMOTE_CONTROL 0x05C0 Peripheral remote control device
PERIPHERAL_SENSING_DEVICE 0x0510 Peripheral sensing device.
PERIPHERAL_DIGITIZER_TABLET 0x0514 Peripheral digitizer tablet.
PERIPHERAL_CARD_READER 0x0518 Peripheral card reader.
PERIPHERAL_DIGITAL_PEN 0x051C Peripheral digital pen.
PERIPHERAL_SCANNER_RFID 0x0520 Peripheral RFID scanner.
PERIPHERAL_GESTURAL_INPUT 0x0522 Gesture input device.
IMAGING_UNCATEGORIZED 0x0600 Unclassified imaging device.
IMAGING_DISPLAY 0x0610 Imaging display device.
IMAGING_CAMERA 0x0620 Imaging camera device.
IMAGING_SCANNER 0x0640 Imaging scanner.
IMAGING_PRINTER 0x0680 Imaging printer.
WEARABLE_UNCATEGORIZED 0x0700 Unclassified wearable device.
WEARABLE_WRIST_WATCH 0x0704 Smart watch.
WEARABLE_PAGER 0x0708 Wearable pager.
WEARABLE_JACKET 0x070C Smart jacket.
WEARABLE_HELMET 0x0710 Wearable helmet.
WEARABLE_GLASSES 0x0714 Wearable glasses.
TOY_UNCATEGORIZED 0x0800 Unclassified toy.
TOY_ROBOT 0x0804 Toy robot.
TOY_VEHICLE 0x0808 Toy vehicle.
TOY_DOLL_ACTION_FIGURE 0x080C Humanoid toy doll.
TOY_CONTROLLER 0x0810 Toy controller.
TOY_GAME 0x0814 Toy gaming device.
HEALTH_UNCATEGORIZED 0x0900 Unclassified health devices.
HEALTH_BLOOD_PRESSURE 0x0904 Blood pressure device.
HEALTH_THERMOMETER 0x0908 Thermometer
HEALTH_WEIGHING 0x090C Body scale.
HEALTH_GLUCOSE 0x0910 Blood glucose monitor.
HEALTH_PULSE_OXIMETER 0x0914 Pulse oximeter.
HEALTH_PULSE_RATE 0x0918 Heart rate monitor.
HEALTH_DATA_DISPLAY 0x091C Health data display.
HEALTH_STEP_COUNTER 0x0920 Step counter.
HEALTH_BODY_COMPOSITION_ANALYZER 0x0924 Body composition analyzer.
HEALTH_PEAK_FLOW_MONITOR 0x0928 Hygrometer.
HEALTH_MEDICATION_MONITOR 0x092C Medication monitor.
HEALTH_KNEE_PROSTHESIS 0x0930 Prosthetic knee.
HEALTH_ANKLE_PROSTHESIS 0x0934 Prosthetic ankle.
HEALTH_GENERIC_HEALTH_MANAGER 0x0938 Generic health management device.
HEALTH_PERSONAL_MOBILITY_DEVICE 0x093C Personal mobility device.

PlayingState(deprecated)

Enumerates the A2DP playing states.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use a2dp.PlayingState.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Value Description
STATE_NOT_PLAYING 0x0000 Not playing.
STATE_PLAYING 0x0001 Playing.

ProfileId(deprecated)

Enumerates the Bluetooth profiles. API version 9 is added with PROFILE_HID_HOST and PROFILE_PAN_NETWORK.

NOTE
This API is supported since API version 9 and deprecated since API version 10. You are advised to use constant.ProfileId.

System capability: SystemCapability.Communication.Bluetooth.Core

Name Value Description
PROFILE_A2DP_SOURCE 1 A2DP profile.
PROFILE_HANDS_FREE_AUDIO_GATEWAY 4 HFP profile.
PROFILE_HID_HOST 6 Human Interface Device (HID) profile.
PROFILE_PAN_NETWORK 7 PAN profile.