harmony 鸿蒙@ohos.bluetoothManager (Bluetooth)

2023-06-24 浏览 (1101)

@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.

IDError Message
2900001Service stopped.
2900099Operation 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.

IDError Message
2900001Service stopped.
2900099Operation 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

TypeDescription
stringName of the local Bluetooth device obtained.

Error codes

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

IDError Message
2900001Service stopped.
2900099Operation 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

TypeDescription
BluetoothStateBluetooth state obtained.

Error codes

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

IDError Message
2900001Service stopped.
2900099Operation 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

TypeDescription
ProfileConnectionStateProfile connection state obtained.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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

NameTypeMandatoryDescription
namestringYesBluetooth device name to set. It cannot exceed 248 bytes.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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

NameTypeMandatoryDescription
deviceIdstringYesAddress 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.

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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

NameTypeMandatoryDescription
ProfileIdprofileIdYesID of the profile to obtain, for example, PROFILE_A2DP_SOURCE.

Return value

TypeDescription
ProfileConnectionStateProfile connection state obtained.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900004Profile is not supported.
2900099Operation 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

NameTypeMandatoryDescription
deviceIdstringYesAddress 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.

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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

NameTypeMandatoryDescription
deviceIdstringYesAddress of the target remote device, for example, XX:XX:XX:XX:XX:XX.

Return value

TypeDescription
stringDevice name (a string) obtained.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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

NameTypeMandatoryDescription
deviceIdstringYesAddress of the target remote device, for example, XX:XX:XX:XX:XX:XX.

Return value

TypeDescription
DeviceClassClass of the remote device obtained.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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

TypeDescription
Array<string>Addresses of the paired Bluetooth devices.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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

NameTypeMandatoryDescription
modeScanModeYesBluetooth scan mode to set.
durationnumberYesDuration (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.

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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

TypeDescription
ScanModeBluetooth scan mode to set.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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.

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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.

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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

NameTypeMandatoryDescription
devicestringYesAddress of the remote device, for example, XX:XX:XX:XX:XX:XX.
acceptbooleanYesWhether 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.

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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

NameTypeMandatoryDescription
typestringYesEvent type. The value bluetoothDeviceFind indicates an event reported when a Bluetooth device is discovered.
callbackCallback<Array<string>>YesCallback invoked to return the discovered devices. You need to implement this callback.

Error codes

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

IDError Message
2900099Operation 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

NameTypeMandatoryDescription
typestringYesEvent type. The value bluetoothDeviceFind indicates an event reported when a Bluetooth device is discovered.
callbackCallback<Array<string>>NoCallback 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.

IDError Message
2900099Operation 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

NameTypeMandatoryDescription
typestringYesEvent type. The value pinRequired indicates a pairing request event.
callbackCallback<PinRequiredParam>YesCallback invoked to return the pairing request. You need to implement this callback.

Error codes

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

IDError Message
2900099Operation 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

NameTypeMandatoryDescription
typestringYesEvent type. The value pinRequired indicates a pairing request event.
callbackCallback<PinRequiredParam>NoCallback 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.

IDError Message
2900099Operation 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

NameTypeMandatoryDescription
typestringYesEvent type. The value bondStateChange indicates a Bluetooth pairing state change event.
callbackCallback<BondStateParam>YesCallback invoked to return the pairing state. You need to implement this callback.

Error codes

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

IDError Message
2900099Operation 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

NameTypeMandatoryDescription
typestringYesEvent type. The value bondStateChange indicates a Bluetooth pairing state change event.
callbackCallback<BondStateParam>NoCallback 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.

IDError Message
2900099Operation 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

NameTypeMandatoryDescription
typestringYesEvent type. The value stateChange indicates a Bluetooth connection state change event.
callbackCallback<BluetoothState>YesCallback 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.

IDError Message
2900099Operation 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

NameTypeMandatoryDescription
typestringYesEvent type. The value stateChange indicates a Bluetooth connection state change event.
callbackCallback<BluetoothState>NoCallback 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.

IDError Message
2900099Operation 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

NameTypeMandatoryDescription
namestringYesName of the service.
optionSppOptionYesSerial port profile (SPP) listening configuration.
callbackAsyncCallback<number>YesCallback invoked to return the server socket ID.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900004Profile is not supported.
2900099Operation 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

NameTypeMandatoryDescription
serverSocketnumberYesServer socket ID.
callbackAsyncCallback<number>YesCallback invoked to return the client socket ID.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900004Profile is not supported.
2900099Operation 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

NameTypeMandatoryDescription
devicestringYesAddress of the remote device, for example, XX:XX:XX:XX:XX:XX.
optionSppOptionYesConfiguration for connecting to the SPP client.
callbackAsyncCallback<number>YesCallback invoked to return the client socket ID.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900004Profile is not supported.
2900099Operation 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

NameTypeMandatoryDescription
socketnumberYesID 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.

IDError Message
2900001Service stopped.
2900099Operation 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

NameTypeMandatoryDescription
NameTypeMandatoryDescription
socketnumberYesClient socket ID, which is obtained by sppAccept or sppConnect.

Error codes

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

IDError Message
2900001Service stopped.
2900099Operation 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

NameTypeMandatoryDescription
clientSocketnumberYesClient socket ID, which is obtained by sppAccept or sppConnect.
dataArrayBufferYesData to write.

Error codes

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

IDError Message
2901054IO error.
2900099Operation 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

NameTypeMandatoryDescription
typestringYesEvent type. The value sppRead indicates an SPP read request event.
clientSocketnumberYesClient socket ID, which is obtained by sppAccept or sppConnect.
callbackCallback<ArrayBuffer>YesCallback invoked to return the data read.

Error codes

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

IDError Message
2901054IO error.
2900099Operation 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

NameTypeMandatoryDescription
typestringYesEvent type. The value sppRead indicates an SPP read request event.
clientSocketnumberYesClient socket ID, which is obtained by sppAccept or sppConnect.
callbackCallback<ArrayBuffer>NoCallback 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

NameTypeMandatoryDescription
profileIdProfileIdYesID of the profile to obtain, for example, PROFILE_A2DP_SOURCE.

Return value

TypeDescription
A2dpSourceProfile, HandsFreeAudioGatewayProfile, HidHostProfile, or PanProfileProfile 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

TypeDescription
GattServerGattServer 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

NameTypeMandatoryDescription
deviceIdstringYesAddress of the remote device, for example, XX:XX:XX:XX:XX:XX.

Return value

TypeDescription
GattClientDeviceGattClientDevice 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

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

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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

NameTypeMandatoryDescription
filtersArray<ScanFilter>YesCriteria for filtering the scan result. Set this parameter to null if you do not want to filter the scan result.
optionsScanOptionsNoScan options.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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.

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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

NameTypeMandatoryDescription
typestringYesEvent type. The value BLEDeviceFind indicates an event reported when a BLE device is discovered.
callbackCallback<Array<ScanResult>>YesCallback invoked to return the discovered devices. You need to implement this callback.

Error codes

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

IDError Message
2900099Operation 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

NameTypeMandatoryDescription
typestringYesEvent type. The value BLEDeviceFind indicates an event reported when a BLE device is discovered.
callbackCallback<Array<ScanResult>>NoCallback 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.

IDError Message
2900099Operation 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

TypeDescription
Array<string>Addresses of the connected devices.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900004Profile is not supported.
2900099Operation 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

NameTypeMandatoryDescription
devicestringYesAddress of the target device.

Return value

TypeDescription
ProfileConnectionStateProfile connection state obtained.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900004Profile is not supported.
2900099Operation 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

NameTypeMandatoryDescription
devicestringYesAddress of the target device.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900004Profile is not supported.
2900099Operation 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

NameTypeMandatoryDescription
devicestringYesAddress of the target device.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900004Profile is not supported.
2900099Operation 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

NameTypeMandatoryDescription
typestringYesEvent type. The value connectionStateChange indicates a A2DP connection state change event.
callbackCallback<StateChangeParam>YesCallback 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

NameTypeMandatoryDescription
typestringYesEvent type. The value connectionStateChange indicates a A2DP connection state change event.
callbackCallback<StateChangeParam>NoCallback 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

NameTypeMandatoryDescription
devicestringYesAddress of the target device.

Return value

TypeDescription
PlayingStatePlaying state of the remote device obtained.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900004Profile is not supported.
2900099Operation 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

NameTypeMandatoryDescription
devicestringYesAddress of the target device.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900004Profile is not supported.
2900099Operation 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

NameTypeMandatoryDescription
devicestringYesAddress of the target device.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900004Profile is not supported.
2900099Operation 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

NameTypeMandatoryDescription
typestringYesEvent type. The value connectionStateChange indicates an HFP connection state change event.
callbackCallback<StateChangeParam>YesCallback 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

NameTypeMandatoryDescription
typestringYesEvent type. The value connectionStateChange indicates an HFP connection state change event.
callbackCallback<StateChangeParam>NoCallback 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

NameTypeMandatoryDescription
devicestringYesAddress of the target device.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900004Profile is not supported.
2900099Operation 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

NameTypeMandatoryDescription
devicestringYesAddress of the target device.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900004Profile is not supported.
2900099Operation 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

NameTypeMandatoryDescription
typestringYesEvent type. The value connectionStateChange indicates a HidHost connection state change event.
callbackCallback<StateChangeParam>YesCallback 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

NameTypeMandatoryDescription
typestringYesEvent type. The value connectionStateChange indicates a HidHost connection state change event.
callbackCallback<StateChangeParam>NoCallback 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

NameTypeMandatoryDescription
devicestringYesAddress of the target device.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900004Profile is not supported.
2900099Operation 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

NameTypeMandatoryDescription
typestringYesEvent type. The value connectionStateChange indicates a PAN connection state change event.
callbackCallback<StateChangeParam>YesCallback 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

NameTypeMandatoryDescription
typestringYesEvent type. The value connectionStateChange indicates a PAN connection state change event.
callbackCallback<StateChangeParam>NoCallback 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

NameTypeMandatoryDescription
valuebooleanYesWhether to set tethering over a Bluetooth PAN.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900004Profile is not supported.
2900099Operation 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

TypeDescription
booleanReturns 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

NameTypeMandatoryDescription
settingAdvertiseSettingYesSettings related to BLE advertising.
advDataAdvertiseDataYesContent of the BLE advertisement packet.
advResponseAdvertiseDataNoResponse to the BLE scan request.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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.

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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

NameTypeMandatoryDescription
serviceGattServiceYesService to add. Settings related to BLE advertising.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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

NameTypeMandatoryDescription
serviceUuidstringYesUniversally 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.

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900004Profile is not supported.
2900099Operation 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.

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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

NameTypeMandatoryDescription
deviceIdstringYesAddress of the client that receives notifications, for example, XX:XX:XX:XX:XX:XX.
notifyCharacteristicNotifyCharacteristicYesNew characteristic value.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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

NameTypeMandatoryDescription
serverResponseServerResponseYesResponse returned by the GATT server.

Error codes

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

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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

NameTypeMandatoryDescription
typestringYesEvent type. The value characteristicRead indicates a characteristic read request event.
callbackCallback<CharacteristicReadRequest>YesCallback 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

NameTypeMandatoryDescription
typestringYesEvent type. The value characteristicRead indicates a characteristic read request event.
callbackCallback<CharacteristicReadRequest>NoCallback 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

NameTypeMandatoryDescription
typestringYesEvent type. The value characteristicWrite indicates a characteristic write request event.
callbackCallback<CharacteristicWriteRequest>YesCallback 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

NameTypeMandatoryDescription
typestringYesEvent type. The value characteristicWrite indicates a characteristic write request event.
callbackCallback<CharacteristicWriteRequest>NoCallback 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

NameTypeMandatoryDescription
typestringYesEvent type. The value descriptorRead indicates a descriptor read request event.
callbackCallback<DescriptorReadRequest>YesCallback 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

NameTypeMandatoryDescription
typestringYesEvent type. The value descriptorRead indicates a descriptor read request event.
callbackCallback<DescriptorReadRequest>NoCallback 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

NameTypeMandatoryDescription
typestringYesEvent type. The value descriptorWrite indicates a descriptor write request event.
callbackCallback<DescriptorWriteRequest>YesCallback 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

NameTypeMandatoryDescription
typestringYesEvent type. The value descriptorWrite indicates a descriptor write request event.
callbackCallback<DescriptorWriteRequest>NoCallback 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

NameTypeMandatoryDescription
typestringYesEvent type. The value connectStateChange indicates a BLE connection state change event.
callbackCallback<BLEConnectChangedState>YesCallback 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

NameTypeMandatoryDescription
typestringYesEvent type. The value connectStateChange indicates a BLE connection state change event.
callbackCallback<BLEConnectChangedState>NoCallback 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.

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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.

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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.

IDError Message
2900001Service stopped.
2900003Bluetooth switch is off.
2900099Operation 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

NameTypeMandatoryDescription
callbackAsyncCallback<Array<GattService>>YesCallback invoked to return the services obtained.

Error codes

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

IDError Message
2900001Service stopped.
2900099Operation 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

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

Error codes

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

IDError Message
2900001Service stopped.
2900099Operation 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

NameTypeMandatoryDescription
characteristicBLECharacteristicYesCharacteristic value to read.
callbackAsyncCallback<BLECharacteristic>YesCallback invoked to return the characteristic value read.

Error codes

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

IDError Message
2900001Service stopped.
2901000Read forbidden.
2900099Operation 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

NameTypeMandatoryDescription
characteristicBLECharacteristicYesCharacteristic value to read.

Return value

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

Error codes

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

IDError Message
2900001Service stopped.
2901000Read forbidden.
2900099Operation 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

NameTypeMandatoryDescription
descriptorBLEDescriptorYesDescriptor to read.
callbackAsyncCallback<BLEDescriptor>YesCallback invoked to return the descriptor read.

Error codes

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

IDError Message
2900001Service stopped.
2901000Read forbidden.
2900099Operation 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

NameTypeMandatoryDescription
descriptorBLEDescriptorYesDescriptor to read.

Return value

TypeDescription
Promise<BLEDescriptor>Promise used to return the descriptor read.

Error codes

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

IDError Message
2900001Service stopped.
2901000Read forbidden.
2900099Operation 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

NameTypeMandatoryDescription
characteristicBLECharacteristicYesBinary value and other parameters of the BLE device characteristic.

Error codes

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

IDError Message
2900001Service stopped.
2901001Write forbidden.
2900099Operation 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

NameTypeMandatoryDescription
descriptorBLEDescriptorYesBinary value and other parameters of the BLE device descriptor.
booleanReturns true if the operation is successful; returns false otherwise.

Error codes

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

IDError Message
2900001Service stopped.
2901001Write forbidden.
2900099Operation 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

NameTypeMandatoryDescription
mtunumberYesMTU to set, which ranges from 22 to 512 bytes.

Error codes

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

IDError Message
2900001Service stopped.
2900099Operation 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

NameTypeMandatoryDescription
characteristicBLECharacteristicYesBLE characteristic to listen for.
enablebooleanYesWhether 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.

IDError Message
2900001Service stopped.
2900099Operation 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

NameTypeMandatoryDescription
typestringYesEvent type. The value BLECharacteristicChange indicates a characteristic value change event.
callbackCallback<BLECharacteristic>YesCallback 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

NameTypeMandatoryDescription
typestringYesEvent type. The value BLECharacteristicChange indicates a characteristic value change event.
callbackCallback<BLECharacteristic>NoCallback 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

NameTypeMandatoryDescription
typestringYesEvent type. The value BLEConnectionStateChange indicates a BLE connection state change event.
callbackCallback<BLEConnectChangedState>YesCallback 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

NameTypeMandatoryDescription
typestringYesEvent type. The value BLEConnectionStateChange indicates a BLE connection state change event.
callbackCallback<BLEConnectChangedState>NoCallback 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

NameTypeMandatoryDescription
callbackAsyncCallback<string>YesCallback invoked to return the remote BLE device name obtained.

Error codes

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

IDError Message
2900001Service stopped.
2900099Operation 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

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

Error codes

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

IDError Message
2900001Service stopped.
2900099Operation 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

NameTypeMandatoryDescription
callbackAsyncCallback<number>YesCallback invoked to return the RSSI, in dBm.

Error codes

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

IDError Message
2900099Operation 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

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

Error codes

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

IDError Message
2900099Operation 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

NameValueDescription
SCAN_MODE_NONE0No scan mode.
SCAN_MODE_CONNECTABLE1Connectable mode.
SCAN_MODE_GENERAL_DISCOVERABLE2General discoverable mode.
SCAN_MODE_LIMITED_DISCOVERABLE3Limited discoverable mode.
SCAN_MODE_CONNECTABLE_GENERAL_DISCOVERABLE4General connectable and discoverable mode.
SCAN_MODE_CONNECTABLE_LIMITED_DISCOVERABLE5Limited 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

NameValueDescription
BOND_STATE_INVALID0Invalid pairing.
BOND_STATE_BONDING1Pairing.
BOND_STATE_BONDED2Paired.

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

NameTypeReadableWritableDescription
uuidstringYesYesUUID of the SPP.
securebooleanYesYesWhether it is a secure channel.
typeSppTypeYesYesType 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

NameValueDescription
SPP_RFCOMM0Radio 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

NameTypeReadableWritableDescription
serviceUuidstringYesYesUUID of the service, for example, 00001888-0000-1000-8000-00805f9b34fb.
isPrimarybooleanYesYesWhether the service is a primary service. The value true means a primary service.
characteristicsArray<BLECharacteristic>YesYesList of characteristics of the service.
includeServicesArray<GattService>YesYesServices 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

NameTypeReadableWritableDescription
serviceUuidstringYesYesUUID of the service, for example, 00001888-0000-1000-8000-00805f9b34fb.
characteristicUuidstringYesYesUUID of the characteristic, for example, 00002a11-0000-1000-8000-00805f9b34fb.
characteristicValueArrayBufferYesYesBinary value of the characteristic.
descriptorsArray<BLEDescriptor>YesYesList 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

NameTypeReadableWritableDescription
serviceUuidstringYesYesUUID of the service, for example, 00001888-0000-1000-8000-00805f9b34fb.
characteristicUuidstringYesYesUUID of the characteristic, for example, 00002a11-0000-1000-8000-00805f9b34fb.
descriptorUuidstringYesYesUUID of the descriptor, for example, 00002902-0000-1000-8000-00805f9b34fb.
descriptorValueArrayBufferYesYesBinary 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

NameTypeReadableWritableDescription
serviceUuidstringYesYesUUID of the service, for example, 00001888-0000-1000-8000-00805f9b34fb.
characteristicUuidstringYesYesUUID of the characteristic, for example, 00002a11-0000-1000-8000-00805f9b34fb.
characteristicValueArrayBufferYesYesBinary value of the characteristic.
confirmbooleanYesYesWhether 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

NameTypeReadableWritableDescription
deviceIdstringYesNoAddress of the remote device that sends the CharacteristicReadReq event, for example, XX:XX:XX:XX:XX:XX.
transIdnumberYesNoTransmission ID of the read request. The response returned by the server must use the same transmission ID.
offsetnumberYesNoPosition 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.
characteristicUuidstringYesNoUUID of the characteristic, for example, 00002a11-0000-1000-8000-00805f9b34fb.
serviceUuidstringYesNoUUID 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

NameTypeReadableWritableDescription
deviceIdstringYesNoAddress of the remote device that sends the CharacteristicWriteReq event, for example, XX:XX:XX:XX:XX:XX.
transIdnumberYesNoTransmission ID of the write request. The response returned by the server must use the same transmission ID.
offsetnumberYesNoStart 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.
descriptorUuidstringYesNoUUID of the descriptor, for example, 00002902-0000-1000-8000-00805f9b34fb.
characteristicUuidstringYesNoUUID of the characteristic, for example, 00002a11-0000-1000-8000-00805f9b34fb.
serviceUuidstringYesNoUUID 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

NameTypeReadableWritableDescription
deviceIdstringYesNoAddress of the remote device that sends a DescriptorReadReq event, for example, XX:XX:XX:XX:XX:XX.
transIdnumberYesNoTransmission ID of the read request. The response returned by the server must use the same transmission ID.
offsetnumberYesNoPosition 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.
descriptorUuidstringYesNoUUID of the descriptor, for example, 00002902-0000-1000-8000-00805f9b34fb.
characteristicUuidstringYesNoUUID of the characteristic, for example, 00002a11-0000-1000-8000-00805f9b34fb.
serviceUuidstringYesNoUUID 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

NameTypeReadableWritableDescription
deviceIdstringYesNoAddress of the remote device that sends a DescriptorWriteReq event, for example, XX:XX:XX:XX:XX:XX.
transIdnumberYesNoTransmission ID of the write request. The response returned by the server must use the same transmission ID.
offsetnumberYesNoStart 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.
isPrepbooleanYesNoWhether the write request is executed immediately.
needRspbooleanYesNoWhether to send a response to the GATT client.
valueArrayBufferYesNoBinary value of the descriptor to write.
descriptorUuidstringYesNoUUID of the descriptor, for example, 00002902-0000-1000-8000-00805f9b34fb.
characteristicUuidstringYesNoUUID of the characteristic, for example, 00002a11-0000-1000-8000-00805f9b34fb.
serviceUuidstringYesNoUUID 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

NameTypeReadableWritableDescription
deviceIdstringYesNoAddress of the remote device, for example, XX:XX:XX:XX:XX:XX.
transIdnumberYesNoTransmission ID of the request. The value must be the same as the ID carried in the read/write request received.
statusnumberYesNoResponse state. Set this parameter to 0, which indicates a normal response.
offsetnumberYesNoStart read/write position. The value must be the same as the offset carried in the read/write request.
valueArrayBufferYesNoBinary 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

NameTypeReadableWritableDescription
deviceIdstringYesNoAddress of the remote device, for example, XX:XX:XX:XX:XX:XX.
stateProfileConnectionStateYesYesBLE 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

NameValueDescription
STATE_DISCONNECTED0Disconnected.
STATE_CONNECTING1Connecting.
STATE_CONNECTED2Connected.
STATE_DISCONNECTING3Disconnecting.

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

NameTypeReadableWritableDescription
deviceIdstringYesYesAddress of the BLE device to filter, for example, XX:XX:XX:XX:XX:XX.
namestringYesYesName of the BLE device to filter.
serviceUuidstringYesYesService UUID of the device to filter, for example, 00001888-0000-1000-8000-00805f9b34fb.
serviceUuidMaskstringYesYesService UUID mask of the device to filter, for example, FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF.
serviceSolicitationUuidstringYesYesService solicitation UUID of the device to filter, for example, 00001888-0000-1000-8000-00805F9B34FB.
serviceSolicitationUuidMaskstringYesYesService solicitation UUID mask of the device to filter, for example, FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF.
serviceDataArrayBufferYesYesService data of the device to filter, for example, [0x90, 0x00, 0xF1, 0xF2].
serviceDataMaskArrayBufferYesYesService data mask of the device to filter, for example, [0xFF,0xFF,0xFF,0xFF].
manufactureIdnumberYesYesManufacturer ID of the device to filter, for example, 0x0006.
manufactureDataArrayBufferYesYesManufacturer data of the device to filter, for example, [0x1F,0x2F,0x3F].
manufactureDataMaskArrayBufferYesYesManufacturer 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

NameTypeReadableWritableDescription
intervalnumberYesYesDelay in reporting the scan result. The default value is 0.
dutyModeScanDutyYesYesScan duty. The default value is SCAN_MODE_LOW_POWER.
matchModeMatchModeYesYesHardware 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

NameValueDescription
SCAN_MODE_LOW_POWER0Low-power mode, which is the default value.
SCAN_MODE_BALANCED1Balanced mode.
SCAN_MODE_LOW_LATENCY2Low-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

NameValueDescription
MATCH_MODE_AGGRESSIVE1Hardware 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_STICKY2Hardware 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

NameTypeReadableWritableDescription
deviceIdstringYesNoAddress of the scanned device, for example, XX:XX:XX:XX:XX:XX.
rssinumberYesNoRSSI of the device.
dataArrayBufferYesNoAdvertisement 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

NameValueDescription
STATE_OFF0Bluetooth is turned off.
STATE_TURNING_ON1Bluetooth is being turned on.
STATE_ON2Bluetooth is turned on.
STATE_TURNING_OFF3Bluetooth is being turned off.
STATE_BLE_TURNING_ON4The LE-only mode is being turned on for Bluetooth.
STATE_BLE_ON5Bluetooth is in LE-only mode.
STATE_BLE_TURNING_OFF6The 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

NameTypeReadableWritableDescription
intervalnumberYesYesInterval for BLE advertising. The minimum value is 32 slots (20 ms). The maximum value is 16384 slots. The default value is 1600 slots (1s).
txPowernumberYesYesTransmit power, in dBm. The value range is -127 to 1. The default value is -7.
connectablebooleanYesYesWhether 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

NameTypeReadableWritableDescription
serviceUuidsArray<string>YesYesList of service UUIDs to broadcast.
manufactureDataArray<ManufactureData>YesYesList of manufacturers to broadcast.
serviceDataArray<ServiceData>YesYesList 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

NameTypeReadableWritableDescription
manufactureIdnumberYesYesManufacturer ID allocated by the Bluetooth SIG.
manufactureValueArrayBufferYesYesManufacturer 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

NameTypeReadableWritableDescription
serviceUuidstringYesYesService UUID.
serviceValueArrayBufferYesYesService 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

NameTypeReadableWritableDescription
deviceIdstringYesNoID of the device to pair.
pinCodestringYesNoKey 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

NameTypeReadableWritableDescription
deviceIdstringYesNoID of the device to pair.
stateBondStateYesNoState 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

NameTypeReadableWritableDescription
deviceIdstringYesNoAddress of a Bluetooth device.
stateProfileConnectionStateYesNoProfile 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

NameTypeReadableWritableDescription
majorClassMajorClassYesNoMajor classes of Bluetooth devices.
majorMinorClassMajorMinorClassYesNoMajor and minor classes of Bluetooth devices.
classOfDevicenumberYesNoClass 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

NameValueDescription
MAJOR_MISC0x0000Miscellaneous device.
MAJOR_COMPUTER0x0100Computer.
MAJOR_PHONE0x0200Mobile phone.
MAJOR_NETWORKING0x0300Network device.
MAJOR_AUDIO_VIDEO0x0400Audio or video device.
MAJOR_PERIPHERAL0x0500Peripheral device.
MAJOR_IMAGING0x0600Imaging device.
MAJOR_WEARABLE0x0700Wearable device.
MAJOR_TOY0x0800Toy.
MAJOR_HEALTH0x0900Health device.
MAJOR_UNCATEGORIZED0x1F00Unclassified 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

NameValueDescription
COMPUTER_UNCATEGORIZED0x0100Unclassified computer.
COMPUTER_DESKTOP0x0104Desktop computer.
COMPUTER_SERVER0x0108Server.
COMPUTER_LAPTOP0x010CLaptop.
COMPUTER_HANDHELD_PC_PDA0x0110Hand-held computer.
COMPUTER_PALM_SIZE_PC_PDA0x0114Palmtop computer.
COMPUTER_WEARABLE0x0118Wearable computer.
COMPUTER_TABLET0x011CTablet.
PHONE_UNCATEGORIZED0x0200Unclassified mobile phone.
PHONE_CELLULAR0x0204Portable phone.
PHONE_CORDLESS0x0208Cordless phone.
PHONE_SMART0x020CSmartphone.
PHONE_MODEM_OR_GATEWAY0x0210Modem or gateway phone.
PHONE_ISDN0x0214ISDN phone.
NETWORK_FULLY_AVAILABLE0x0300Device with network fully available.
NETWORK_1_TO_17_UTILIZED0x0320Device used on network 1 to 17.
NETWORK_17_TO_33_UTILIZED0x0340Device used on network 17 to 33.
NETWORK_33_TO_50_UTILIZED0x0360Device used on network 33 to 50.
NETWORK_60_TO_67_UTILIZED0x0380Device used on network 60 to 67.
NETWORK_67_TO_83_UTILIZED0x03A0Device used on network 67 to 83.
NETWORK_83_TO_99_UTILIZED0x03C0Device used on network 83 to 99.
NETWORK_NO_SERVICE0x03E0Device without network service
AUDIO_VIDEO_UNCATEGORIZED0x0400Unclassified audio or video device.
AUDIO_VIDEO_WEARABLE_HEADSET0x0404Wearable audio or video headset.
AUDIO_VIDEO_HANDSFREE0x0408Hands-free audio or video device.
AUDIO_VIDEO_MICROPHONE0x0410Audio or video microphone.
AUDIO_VIDEO_LOUDSPEAKER0x0414Audio or video loudspeaker.
AUDIO_VIDEO_HEADPHONES0x0418Audio or video headphones.
AUDIO_VIDEO_PORTABLE_AUDIO0x041CPortable audio or video device.
AUDIO_VIDEO_CAR_AUDIO0x0420In-vehicle audio or video device.
AUDIO_VIDEO_SET_TOP_BOX0x0424Audio or video STB device.
AUDIO_VIDEO_HIFI_AUDIO0x0428High-fidelity speaker device.
AUDIO_VIDEO_VCR0x042CVideo cassette recording (VCR) device.
AUDIO_VIDEO_VIDEO_CAMERA0x0430Camera.
AUDIO_VIDEO_CAMCORDER0x0434Camcorder
AUDIO_VIDEO_VIDEO_MONITOR0x0438Audio or video monitor.
AUDIO_VIDEO_VIDEO_DISPLAY_AND_LOUDSPEAKER0x043CVideo display or loudspeaker.
AUDIO_VIDEO_VIDEO_CONFERENCING0x0440Video conferencing device.
AUDIO_VIDEO_VIDEO_GAMING_TOY0x0448Audio or video gaming toy.
PERIPHERAL_NON_KEYBOARD_NON_POINTING0x0500Non-keyboard or non-pointing peripheral device.
PERIPHERAL_KEYBOARD0x0540Keyboard device.
PERIPHERAL_POINTING_DEVICE0x0580Pointing peripheral device.
PERIPHERAL_KEYBOARD_POINTING0x05C0Keyboard pointing device.
PERIPHERAL_UNCATEGORIZED0x0500Unclassified peripheral device.
PERIPHERAL_JOYSTICK0x0504Peripheral joystick.
PERIPHERAL_GAMEPAD0x0508Peripheral game pad
PERIPHERAL_REMOTE_CONTROL0x05C0Peripheral remote control device
PERIPHERAL_SENSING_DEVICE0x0510Peripheral sensing device.
PERIPHERAL_DIGITIZER_TABLET0x0514Peripheral digitizer tablet.
PERIPHERAL_CARD_READER0x0518Peripheral card reader.
PERIPHERAL_DIGITAL_PEN0x051CPeripheral digital pen.
PERIPHERAL_SCANNER_RFID0x0520Peripheral RFID scanner.
PERIPHERAL_GESTURAL_INPUT0x0522Gesture input device.
IMAGING_UNCATEGORIZED0x0600Unclassified imaging device.
IMAGING_DISPLAY0x0610Imaging display device.
IMAGING_CAMERA0x0620Imaging camera device.
IMAGING_SCANNER0x0640Imaging scanner.
IMAGING_PRINTER0x0680Imaging printer.
WEARABLE_UNCATEGORIZED0x0700Unclassified wearable device.
WEARABLE_WRIST_WATCH0x0704Smart watch.
WEARABLE_PAGER0x0708Wearable pager.
WEARABLE_JACKET0x070CSmart jacket.
WEARABLE_HELMET0x0710Wearable helmet.
WEARABLE_GLASSES0x0714Wearable glasses.
TOY_UNCATEGORIZED0x0800Unclassified toy.
TOY_ROBOT0x0804Toy robot.
TOY_VEHICLE0x0808Toy vehicle.
TOY_DOLL_ACTION_FIGURE0x080CHumanoid toy doll.
TOY_CONTROLLER0x0810Toy controller.
TOY_GAME0x0814Toy gaming device.
HEALTH_UNCATEGORIZED0x0900Unclassified health devices.
HEALTH_BLOOD_PRESSURE0x0904Blood pressure device.
HEALTH_THERMOMETER0x0908Thermometer
HEALTH_WEIGHING0x090CBody scale.
HEALTH_GLUCOSE0x0910Blood glucose monitor.
HEALTH_PULSE_OXIMETER0x0914Pulse oximeter.
HEALTH_PULSE_RATE0x0918Heart rate monitor.
HEALTH_DATA_DISPLAY0x091CHealth data display.
HEALTH_STEP_COUNTER0x0920Step counter.
HEALTH_BODY_COMPOSITION_ANALYZER0x0924Body composition analyzer.
HEALTH_PEAK_FLOW_MONITOR0x0928Hygrometer.
HEALTH_MEDICATION_MONITOR0x092CMedication monitor.
HEALTH_KNEE_PROSTHESIS0x0930Prosthetic knee.
HEALTH_ANKLE_PROSTHESIS0x0934Prosthetic ankle.
HEALTH_GENERIC_HEALTH_MANAGER0x0938Generic health management device.
HEALTH_PERSONAL_MOBILITY_DEVICE0x093CPersonal 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

NameValueDescription
STATE_NOT_PLAYING0x0000Not playing.
STATE_PLAYING0x0001Playing.

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

NameValueDescription
PROFILE_A2DP_SOURCE1A2DP profile.
PROFILE_HANDS_FREE_AUDIO_GATEWAY4HFP profile.
PROFILE_HID_HOST6Human Interface Device (HID) profile.
PROFILE_PAN_NETWORK7PAN profile.

你可能感兴趣的鸿蒙文章

harmony 鸿蒙APIs

harmony 鸿蒙System Common Events (To Be Deprecated Soon)

harmony 鸿蒙System Common Events

harmony 鸿蒙API Reference Document Description

harmony 鸿蒙Enterprise Device Management Overview (for System Applications Only)

harmony 鸿蒙BundleStatusCallback

harmony 鸿蒙@ohos.bundle.innerBundleManager (innerBundleManager)

harmony 鸿蒙@ohos.distributedBundle (Distributed Bundle Management)

harmony 鸿蒙@ohos.bundle (Bundle)

harmony 鸿蒙@ohos.enterprise.EnterpriseAdminExtensionAbility (EnterpriseAdminExtensionAbility)

  • 所属分类: 后端技术
  • 本文标签: 软件 鸿蒙
  • 版权声明: 本文链接 https://seaxiang.com/blog/73ca1f850ec4475c8877de9b6cfaaca5