# @ohos.bluetoothManager (è“牙) è“ç‰™æ¨¡å—æä¾›äº†åŸºç¡€çš„ä¼ ç»Ÿè“牙能力以åŠBLE的扫æã€å¹¿æ’ç‰åŠŸèƒ½ã€‚ > **说明:** > > 本模å—首批接å£ä»ŽAPI version 9开始支æŒã€‚åŽç»ç‰ˆæœ¬çš„æ–°å¢žæŽ¥å£ï¼Œé‡‡ç”¨ä¸Šè§’æ ‡å•ç‹¬æ ‡è®°æŽ¥å£çš„起始版本。 > 从API Version 10 开始,该接å£ä¸å†ç»´æŠ¤ï¼ŒæŽ¨è使用[`@ohos.bluetooth.ble`](js-apis-bluetooth-ble.md)ç‰ç›¸å…³profile接å£ã€‚ ## å¯¼å…¥æ¨¡å— ```js import bluetoothManager from '@ohos.bluetoothManager'; ``` ## bluetoothManager.enableBluetooth<sup>(deprecated)</sup> enableBluetooth(): void å¼€å¯è“牙。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[access.enableBluetooth](js-apis-bluetooth-access.md#accessenablebluetooth)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900099 | Operation failed. | **示例:** ```js import { BusinessError } from '@ohos.base'; try { bluetoothManager.enableBluetooth(); } catch (err) { console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message); } ``` ## bluetoothManager.disableBluetooth<sup>(deprecated)</sup> disableBluetooth(): void å…³é—è“牙。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[access.disableBluetooth](js-apis-bluetooth-access.md#accessdisablebluetooth)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900099 | Operation failed. | **示例:** ```js import { BusinessError } from '@ohos.base'; try { bluetoothManager.disableBluetooth(); } catch (err) { console.error("errCode:" + (err as BusinessError).code + ", errMessage:" + (err as BusinessError).message); } ``` ## bluetoothManager.getLocalName<sup>(deprecated)</sup> getLocalName(): string 获å–è“牙本地设备å称。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.getLocalName](js-apis-bluetooth-connection.md#connectiongetlocalname)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **返回值:** | 类型 | 说明 | | ------ | --------- | | string | è“牙本地设备å称。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> getState(): BluetoothState 获å–è“牙开关状æ€ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[access.getState](js-apis-bluetooth-access.md#accessgetstate)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **返回值:** | 类型 | 说明 | | --------------------------------- | --------- | | [BluetoothState](#bluetoothstatedeprecated) | 表示è“牙开关状æ€ã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> getBtConnectionState(): ProfileConnectionState 获å–è“牙本端的Profile连接状æ€ï¼Œä¾‹å¦‚:任æ„一个支æŒçš„Profile连接状æ€ä¸ºå·²è¿žæŽ¥ï¼Œåˆ™æ¤æŽ¥å£è¿”回状æ€ä¸ºå·²è¿žæŽ¥ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.getProfileConnectionState](js-apis-bluetooth-connection.md#connectiongetprofileconnectionstate)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **返回值:** | 类型 | 说明 | | ---------------------------------------- | ------------------- | | [ProfileConnectionState](#profileconnectionstatedeprecated) | 表示è“牙设备的Profile连接状æ€ã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> setLocalName(name: string): void 设置è“牙本地设备å称。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.setLocalName](js-apis-bluetooth-connection.md#connectionsetlocalname)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ---- | ------ | ---- | --------------------- | | name | string | 是 | è¦è®¾ç½®çš„è“牙å称,最大长度为248å—节数。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> pairDevice(deviceId: string): void å‘èµ·è“牙é…对。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.pairDevice](js-apis-bluetooth-connection.md#connectionpairdevice)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ------ | ---- | ----------------------------------- | | deviceId | string | 是 | 表示é…对的远端设备地å€ï¼Œä¾‹å¦‚:"XX:XX:XX:XX:XX:XX"。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900099 | Operation failed. | **示例:** ```js import { BusinessError } from '@ohos.base'; try { // 实际的地å€å¯ç”±æ‰«ææµç¨‹èŽ·å– bluetoothManager.pairDevice("XX:XX:XX:XX:XX:XX"); } catch (err) { console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message); } ``` ## bluetoothManager.getProfileConnectionState<sup>(deprecated)</sup> getProfileConnectionState(profileId: ProfileId): ProfileConnectionState 便®ProfileIdèŽ·å–æŒ‡å®šprofile的连接状æ€ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.getProfileConnectionState](js-apis-bluetooth-connection.md#connectiongetprofileconnectionstate)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | --------- | --------- | ---- | ------------------------------------- | | profileId | ProfileId | 是 | 表示profile的枚举值,例如:PROFILE_A2DP_SOURCE。 | **返回值:** | 类型 | 说明 | | ------------------------------------------------- | ------------------- | | [ProfileConnectionState](#profileconnectionstatedeprecated) | profile的连接状æ€ã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900004 | Profile not supported. | |2900099 | Operation failed. | **示例:** ```js 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.getRemoteDeviceName<sup>(deprecated)</sup> getRemoteDeviceName(deviceId: string): string 获å–对端è“牙设备的å称。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.getRemoteDeviceName](js-apis-bluetooth-connection.md#connectiongetremotedevicename)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ------ | ---- | --------------------------------- | | deviceId | string | 是 | 表示远程设备的地å€ï¼Œä¾‹å¦‚:"XX:XX:XX:XX:XX:XX"。 | **返回值:** | 类型 | 说明 | | ------ | ------------- | | string | 以å—ç¬¦ä¸²æ ¼å¼è¿”回设备å称。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> getRemoteDeviceClass(deviceId: string): DeviceClass 获å–对端è“牙设备的类别。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.getRemoteDeviceClass](js-apis-bluetooth-connection.md#connectiongetremotedeviceclass)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ------ | ---- | --------------------------------- | | deviceId | string | 是 | 表示远程设备的地å€ï¼Œä¾‹å¦‚:"XX:XX:XX:XX:XX:XX"。 | **返回值:** | 类型 | 说明 | | --------------------------- | -------- | | [DeviceClass](#deviceclassdeprecated) | 远程设备的类别。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> getPairedDevices(): Array<string> 获å–è“牙é…对列表。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.getPairedDevices](js-apis-bluetooth-connection.md#connectiongetpaireddevices)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **返回值:** | 类型 | 说明 | | ------------------- | ------------- | | Array<string> | å·²é…对è“牙设备的地å€åˆ—表。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> setBluetoothScanMode(mode: ScanMode, duration: number): void 设置è“ç‰™æ‰«ææ¨¡å¼ï¼Œå¯ä»¥è¢«è¿œç«¯è®¾å¤‡å‘现。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.setBluetoothScanMode](js-apis-bluetooth-connection.md#connectionsetbluetoothscanmode)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | --------------------- | ---- | ---------------------------- | | mode | [ScanMode](#scanmodedeprecated) | 是 | è“ç‰™æ‰«ææ¨¡å¼ã€‚ | | duration | number | 是 | 设备å¯è¢«å‘现的æŒç»æ—¶é—´ï¼Œå•ä½ä¸ºæ¯«ç§’;设置为0则æŒç»å¯å‘现。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900099 | Operation failed. | **示例:** ```js import { BusinessError } from '@ohos.base'; try { // 设置为å¯è¿žæŽ¥å¯å‘现æ‰å¯è¢«è¿œç«¯è®¾å¤‡æ‰«æåˆ°ï¼Œå¯ä»¥è¿žæŽ¥ã€‚ 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<sup>(deprecated)</sup> getBluetoothScanMode(): ScanMode 获å–è“ç‰™æ‰«ææ¨¡å¼ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.getBluetoothScanMode](js-apis-bluetooth-connection.md#connectiongetbluetoothscanmode)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **返回值:** | 类型 | 说明 | | --------------------- | ------- | | [ScanMode](#scanmodedeprecated) | è“ç‰™æ‰«ææ¨¡å¼ã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> startBluetoothDiscovery(): void å¼€å¯è“牙扫æï¼Œå¯ä»¥å‘现远端设备。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.startBluetoothDiscovery](js-apis-bluetooth-connection.md#connectionstartbluetoothdiscovery)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> stopBluetoothDiscovery(): void å…³é—è“牙扫æã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.stopBluetoothDiscovery](js-apis-bluetooth-connection.md#connectionstopbluetoothdiscovery)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900099 | Operation failed. | **示例:** ```js import { BusinessError } from '@ohos.base'; try { bluetoothManager.stopBluetoothDiscovery(); } catch (err) { console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message); } ``` ## bluetoothManager.setDevicePairingConfirmation<sup>(deprecated)</sup> setDevicePairingConfirmation(device: string, accept: boolean): void 设置设备é…对请求确认。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.setDevicePairingConfirmation](js-apis-bluetooth-connection.md#connectionsetdevicepairingconfirmation)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH å’Œ ohos.permission.MANAGE_BLUETOOTH(该æƒé™ä»…系统应用å¯ç”³è¯·ï¼‰ **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------- | ---- | -------------------------------- | | device | string | 是 | 表示远端设备地å€ï¼Œä¾‹å¦‚:"XX:XX:XX:XX:XX:XX"。 | | accept | boolean | 是 | 接å—é…对请求设置为true,å¦åˆ™è®¾ç½®ä¸ºfalse。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900099 | Operation failed. | **示例:** ```js import { BusinessError } from '@ohos.base'; // 订阅“pinRequiredâ€é…对请求事件,收到远端é…对请求åŽè®¾ç½®é…对确认 function onReceivePinRequiredEvent(data: bluetoothManager.PinRequiredParam) { // data为é…对请求的入å‚,é…å¯¹è¯·æ±‚å‚æ•° 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')<sup>(deprecated)</sup> on(type: 'bluetoothDeviceFind', callback: Callback<Array<string>>): void 订阅è“牙设备å‘现上报事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.on('bluetoothDeviceFind')](js-apis-bluetooth-connection.md#connectiononbluetoothdevicefind)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ----------------------------------- | ---- | -------------------------------------- | | type | string | 是 | 填写"bluetoothDeviceFind"å—符串,表示è“牙设备å‘现事件。 | | callback | Callback<Array<string>> | 是 | 表示回调函数的入å‚,å‘现的设备集åˆã€‚å›žè°ƒå‡½æ•°ç”±ç”¨æˆ·åˆ›å»ºé€šè¿‡è¯¥æŽ¥å£æ³¨å†Œã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900099 | Operation failed. | **示例:** ```js import { BusinessError } from '@ohos.base'; function onReceiveEvent(data: Array<string>) { // data为è“牙设备地å€é›†åˆ 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')<sup>(deprecated)</sup> off(type: 'bluetoothDeviceFind', callback?: Callback<Array<string>>): void å–æ¶ˆè®¢é˜…è“牙设备å‘现上报事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.off('bluetoothDeviceFind')](js-apis-bluetooth-connection.md#connectionoffbluetoothdevicefind)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ----------------------------------- | ---- | ---------------------------------------- | | type | string | 是 | 填写"bluetoothDeviceFind"å—符串,表示è“牙设备å‘现事件。 | | callback | Callback<Array<string>> | å¦ | è¡¨ç¤ºå–æ¶ˆè®¢é˜…è“牙设备å‘现事件上报。ä¸å¡«è¯¥å‚æ•°åˆ™å–æ¶ˆè®¢é˜…该type对应的所有回调。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |801 | Capability not supported. | |2900099 | Operation failed. | **示例:** ```js 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')<sup>(deprecated)</sup> on(type: 'pinRequired', callback: Callback<PinRequiredParam>): void 订阅远端è“牙设备的é…对请求事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.on('pinRequired')](js-apis-bluetooth-connection.md#connectiononpinrequired)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | -------------------------------- | | type | string | 是 | 填写"pinRequired"å—符串,表示é…对请求事件。 | | callback | Callback<[PinRequiredParam](#pinrequiredparamdeprecated)> | 是 | 表示回调函数的入å‚,é…å¯¹è¯·æ±‚ã€‚å›žè°ƒå‡½æ•°ç”±ç”¨æˆ·åˆ›å»ºé€šè¿‡è¯¥æŽ¥å£æ³¨å†Œã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900099 | Operation failed. | **示例:** ```js import { BusinessError } from '@ohos.base'; function onReceiveEvent(data: bluetoothManager.PinRequiredParam) { // data为é…å¯¹è¯·æ±‚å‚æ•° 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')<sup>(deprecated)</sup> off(type: 'pinRequired', callback?: Callback<PinRequiredParam>): void å–æ¶ˆè®¢é˜…远端è“牙设备的é…对请求事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.off('pinRequired')](js-apis-bluetooth-connection.md#connectionoffpinrequired)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ---------------------------------------- | | type | string | 是 | 填写"pinRequired"å—符串,表示é…对请求事件。 | | callback | Callback<[PinRequiredParam](#pinrequiredparamdeprecated)> | å¦ | è¡¨ç¤ºå–æ¶ˆè®¢é˜…è“牙é…对请求事件上报,入å‚为é…å¯¹è¯·æ±‚å‚æ•°ã€‚ä¸å¡«è¯¥å‚æ•°åˆ™å–æ¶ˆè®¢é˜…该type对应的所有回调。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900099 | Operation failed. | **示例:** ```js 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')<sup>(deprecated)</sup> on(type: 'bondStateChange', callback: Callback<BondStateParam>): void 订阅è“牙é…å¯¹çŠ¶æ€æ”¹å˜äº‹ä»¶ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.on('bondStateChange')](js-apis-bluetooth-connection.md#connectiononbondstatechange)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ------------------------------------ | | type | string | 是 | 填写"bondStateChange"å—符串,表示è“牙é…å¯¹çŠ¶æ€æ”¹å˜äº‹ä»¶ã€‚ | | callback | Callback<[BondStateParam](#bondstateparamdeprecated)> | 是 | 表示回调函数的入å‚,é…对的状æ€ã€‚å›žè°ƒå‡½æ•°ç”±ç”¨æˆ·åˆ›å»ºé€šè¿‡è¯¥æŽ¥å£æ³¨å†Œã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900099 | Operation failed. | **示例:** ```js import { BusinessError } from '@ohos.base'; function onReceiveEvent(data: bluetoothManager.BondStateParam) { // data为回调函数入å‚,表示é…å¯¹çš„çŠ¶æ€ 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')<sup>(deprecated)</sup> off(type: 'bondStateChange', callback?: Callback<BondStateParam>): void å–æ¶ˆè®¢é˜…è“牙é…å¯¹çŠ¶æ€æ”¹å˜äº‹ä»¶ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.off('bondStateChange')](js-apis-bluetooth-connection.md#connectionoffbondstatechange)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ---------------------------------------- | | type | string | 是 | 填写"bondStateChange"å—符串,表示è“牙é…å¯¹çŠ¶æ€æ”¹å˜äº‹ä»¶ã€‚ | | callback | Callback<[BondStateParam](#bondstateparamdeprecated)> | å¦ | è¡¨ç¤ºå–æ¶ˆè®¢é˜…è“牙é…å¯¹çŠ¶æ€æ”¹å˜äº‹ä»¶ä¸ŠæŠ¥ã€‚ä¸å¡«è¯¥å‚æ•°åˆ™å–æ¶ˆè®¢é˜…该type对应的所有回调。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900099 | Operation failed. | **示例:** ```js 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')<sup>(deprecated)</sup> on(type: 'stateChange', callback: Callback<BluetoothState>): void 订阅è“牙设备开关状æ€äº‹ä»¶ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[access.on('stateChange')](js-apis-bluetooth-access.md#accessonstatechange)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | -------------------------------- | | type | string | 是 | 填写"stateChange"å—符串,表示è“ç‰™çŠ¶æ€æ”¹å˜äº‹ä»¶ã€‚ | | callback | Callback<[BluetoothState](#bluetoothstatedeprecated)> | 是 | 表示回调函数的入å‚,è“牙状æ€ã€‚å›žè°ƒå‡½æ•°ç”±ç”¨æˆ·åˆ›å»ºé€šè¿‡è¯¥æŽ¥å£æ³¨å†Œã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900099 | Operation failed. | **示例:** ```js 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')<sup>(deprecated)</sup> off(type: 'stateChange', callback?: Callback<BluetoothState>): void å–æ¶ˆè®¢é˜…è“牙设备开关状æ€äº‹ä»¶ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[access.off('stateChange')](js-apis-bluetooth-access.md#accessoffstatechange)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ---------------------------------------- | | type | string | 是 | 填写"stateChange"å—符串,表示è“ç‰™çŠ¶æ€æ”¹å˜äº‹ä»¶ã€‚ | | callback | Callback<[BluetoothState](#bluetoothstatedeprecated)> | å¦ | è¡¨ç¤ºå–æ¶ˆè®¢é˜…è“ç‰™çŠ¶æ€æ”¹å˜äº‹ä»¶ä¸ŠæŠ¥ã€‚ä¸å¡«è¯¥å‚æ•°åˆ™å–æ¶ˆè®¢é˜…该type对应的所有回调。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> sppListen(name: string, option: SppOption, callback: AsyncCallback<number>): void 创建一个æœåŠ¡ç«¯ç›‘å¬Socket。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[socket.sppListen](js-apis-bluetooth-socket.md#socketspplisten)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | --------------------------- | ---- | ----------------------- | | name | string | 是 | æœåŠ¡çš„å称。 | | option | [SppOption](#sppoptiondeprecated) | 是 | spp监å¬é…ç½®å‚æ•°ã€‚ | | callback | AsyncCallback<number> | 是 | 表示回调函数的入å‚,æœåŠ¡ç«¯Socketçš„id。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900004 | Profile not supported. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> sppAccept(serverSocket: number, callback: AsyncCallback<number>): void æœåŠ¡ç«¯ç›‘å¬socketç‰å¾…客户端连接。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[socket.sppAccept](js-apis-bluetooth-socket.md#socketsppaccept)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------------ | --------------------------- | ---- | ----------------------- | | serverSocket | number | 是 | æœåŠ¡ç«¯socketçš„id。 | | callback | AsyncCallback<number> | 是 | 表示回调函数的入å‚,客户端socketçš„id。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900004 | Profile not supported. | |2900099 | Operation failed. | **示例:** ```js 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); // 获å–çš„clientNumber用作æœåŠ¡ç«¯åŽç»è¯»/写æ“作socketçš„id。 clientNumber = number; } } try { bluetoothManager.sppAccept(serverNumber, acceptClientSocket); } catch (err) { console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message); } ``` ## bluetoothManager.sppConnect<sup>(deprecated)</sup> sppConnect(device: string, option: SppOption, callback: AsyncCallback<number>): void 客户端å‘远端设备å‘èµ·spp连接。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[socket.sppConnect](js-apis-bluetooth-socket.md#socketsppconnect)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | --------------------------- | ---- | ------------------------------ | | device | string | 是 | 对端设备地å€ï¼Œä¾‹å¦‚:"XX:XX:XX:XX:XX:XX"。 | | option | [SppOption](#sppoptiondeprecated) | 是 | spp客户端连接é…ç½®å‚æ•°ã€‚ | | callback | AsyncCallback<number> | 是 | 表示回调函数的入å‚,客户端socketçš„id。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900004 | Profile not supported. | |2900099 | Operation failed. | **示例:** ```js 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); // 获å–çš„clientNumber用作客户端åŽç»è¯»/写æ“作socketçš„id。 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<sup>(deprecated)</sup> sppCloseServerSocket(socket: number): void 关闿œåŠ¡ç«¯ç›‘å¬Socket,入å‚socketç”±sppListen接å£è¿”回。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[socket.sppCloseServerSocket](js-apis-bluetooth-socket.md#socketsppcloseserversocket)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------ | ---- | --------------- | | socket | number | 是 | æœåŠ¡ç«¯ç›‘å¬socketçš„id。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> sppCloseClientSocket(socket: number): void å…³é—客户端socket,入å‚socketç”±sppAccept或sppConnect接å£èŽ·å–。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[socket.sppCloseClientSocket](js-apis-bluetooth-socket.md#socketsppcloseclientsocket)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------ | ---- | ------------- | | socket | number | 是 | 客户端socketçš„id。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900099 | Operation failed. | **示例:** ```js 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); // 获å–çš„clientNumber用作客户端åŽç»è¯»/写æ“作socketçš„id。 clientNumber = number; } try { bluetoothManager.sppCloseClientSocket(clientNumber); } catch (err) { console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message); } ``` ## bluetoothManager.sppWrite<sup>(deprecated)</sup> sppWrite(clientSocket: number, data: ArrayBuffer): void 通过socketå‘远端å‘逿•°æ®ï¼Œå…¥å‚clientSocketç”±sppAccept或sppConnect接å£èŽ·å–。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[socket.sppWrite](js-apis-bluetooth-socket.md#socketsppwrite)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------------ | ----------- | ---- | ------------- | | clientSocket | number | 是 | 客户端socketçš„id。 | | data | ArrayBuffer | 是 | 写入的数æ®ã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. | |801 | Capability not supported. | |2901054 | IO error. | |2900099 | Operation failed. | **示例:** ```js 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); // 获å–çš„clientNumber用作客户端åŽç»è¯»/写æ“作socketçš„id。 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')<sup>(deprecated)</sup> on(type: 'sppRead', clientSocket: number, callback: Callback<ArrayBuffer>): void 订阅spp读请求事件,入å‚clientSocketç”±sppAccept或sppConnect接å£èŽ·å–。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[socket.on('sppRead')](js-apis-bluetooth-socket.md#socketonsppread)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------------ | --------------------------- | ---- | -------------------------- | | type | string | 是 | 填写"sppRead"å—符串,表示spp读请求事件。 | | clientSocket | number | 是 | 客户端socketçš„id。 | | callback | Callback<ArrayBuffer> | 是 | 表示回调函数的入å‚,读å–到的数æ®ã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. | |801 | Capability not supported. | |2901054 | IO error. | |2900099 | Operation failed. | **示例:** ```js 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); // 获å–çš„clientNumber用作客户端åŽç»è¯»/写æ“作socketçš„id。 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')<sup>(deprecated)</sup> off(type: 'sppRead', clientSocket: number, callback?: Callback<ArrayBuffer>): void å–æ¶ˆè®¢é˜…spp读请求事件,入å‚clientSocketç”±sppAccept或sppConnect接å£èŽ·å–。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[socket.off('sppRead')](js-apis-bluetooth-socket.md#socketoffsppread)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------------ | --------------------------- | ---- | ---------------------------------------- | | type | string | 是 | 填写"sppRead"å—符串,表示spp读请求事件。 | | clientSocket | number | 是 | 客户端Socketçš„id。 | | callback | Callback<ArrayBuffer> | å¦ | è¡¨ç¤ºå–æ¶ˆè®¢é˜…spp读请求事件上报。ä¸å¡«è¯¥å‚æ•°åˆ™å–æ¶ˆè®¢é˜…该type对应的所有回调。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. | |801 | Capability not supported. | **示例:** ```js 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); // 获å–çš„clientNumber用作客户端åŽç»è¯»/写æ“作socketçš„id。 clientNumber = number; } try { bluetoothManager.off('sppRead', clientNumber); } catch (err) { console.error("errCode:" + (err as BusinessError).code + ",errMessage:" + (err as BusinessError).message); } ``` ## bluetoothManager.getProfileInstance<sup>(deprecated)</sup> getProfileInstance(profileId: ProfileId): A2dpSourceProfile | HandsFreeAudioGatewayProfile | HidHostProfile | PanProfile 通过ProfileId,获å–profile的对象实例,API9新增了HidHostProfile,PanProfile。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | --------- | --------- | ---- | ------------------------------------- | | profileId | [ProfileId](#profileiddeprecated) | 是 | 表示profile的枚举值,例如:PROFILE_A2DP_SOURCE。 | **返回值:** | 类型 | 说明 | | ------------------------------------------------------------ | ------------------------------------------------------------ | | [A2dpSourceProfile](#a2dpsourceprofile)或 [HandsFreeAudioGatewayProfile](#handsfreeaudiogatewayprofiledeprecated)或[HidHostProfile](#hidhostprofiledeprecated)或[PanProfile](#panprofile) | 对应的profileçš„å¯¹è±¡å®žä¾‹ï¼Œå½“å‰æ”¯æŒA2dpSourceProfile/HandsFreeAudioGatewayProfile/HidHostProfile/PanProfile。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. | |801 | Capability not supported. | **示例:** ```js 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); } ``` ## BLE BLEæ¨¡å—æä¾›äº†å¯¹è“牙æ“作和管ç†çš„æ–¹æ³•。 ### createGattServer<sup>(deprecated)</sup> createGattServer(): GattServer 创建一个å¯ä½¿ç”¨çš„GattServer实例。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.createGattServer](js-apis-bluetooth-ble.md#blecreategattserver)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **返回值:** | 类型 | 说明 | | ------------------------- | ------------------------------------ | | [GattServer](#gattserver) | server端类,使用server端方法之å‰éœ€è¦åˆ›å»ºè¯¥ç±»çš„实例进行æ“作。 | **示例:** ```js let gattServer: bluetoothManager.GattServer = bluetoothManager.BLE.createGattServer(); ``` ### createGattClientDevice<sup>(deprecated)</sup> createGattClientDevice(deviceId: string): GattClientDevice 创建一个å¯ä½¿ç”¨çš„GattClientDevice实例。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.createGattClientDevice](js-apis-bluetooth-ble.md#blecreategattclientdevice)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ------ | ---- | ------------------------------------ | | deviceId | string | 是 | 对端设备地å€ï¼Œ 例如:"XX:XX:XX:XX:XX:XX"。 | **返回值:** | 类型 | 说明 | | ------------------------------------- | ------------------------------------ | | [GattClientDevice](#gattclientdevice) | client端类,使用client端方法之å‰éœ€è¦åˆ›å»ºè¯¥ç±»çš„实例进行æ“作。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | **示例:** ```js 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<sup>(deprecated)</sup> getConnectedBLEDevices(): Array<string> 获å–和当å‰è®¾å¤‡è¿žæŽ¥çš„BLE设备。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.getConnectedBLEDevices](js-apis-bluetooth-ble.md#blegetconnectedbledevices)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **返回值:** | 类型 | 说明 | | ------------------- | ------------------- | | Array<string> | 返回当å‰è®¾å¤‡ä½œä¸ºServer端时连接BLE设备地å€é›†åˆã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> startBLEScan(filters: Array<ScanFilter>, options?: ScanOptions): void å‘èµ·BLEæ‰«ææµç¨‹ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.startBLEScan](js-apis-bluetooth-ble.md#blestartblescan)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------- | -------------------------------------- | ---- | ----------------------------------- | | filters | Array<[ScanFilter](#scanfilterdeprecated)> | 是 | 表示扫æç»“果过滤ç–略集åˆï¼Œå¦‚æžœä¸ä½¿ç”¨è¿‡æ»¤çš„æ–¹å¼ï¼Œè¯¥å‚数设置为null。 | | options | [ScanOptions](#scanoptionsdeprecated) | å¦ | 表示扫æçš„傿•°é…置,å¯é€‰å‚数。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> stopBLEScan(): void åœæ¢BLEæ‰«ææµç¨‹ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.startBLEScan](js-apis-bluetooth-ble.md#blestopblescan)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900099 | Operation failed. | **示例:** ```js 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')<sup>(deprecated)</sup> on(type: 'BLEDeviceFind', callback: Callback<Array<ScanResult>>): void 订阅BLE设备å‘现上报事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.on('BLEDeviceFind')](js-apis-bluetooth-ble.md#bleonbledevicefind)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ----------------------------------- | | type | string | 是 | 填写"BLEDeviceFind"å—符串,表示BLE设备å‘现事件。 | | callback | Callback<Array<[ScanResult](#scanresultdeprecated)>> | 是 | 表示回调函数的入å‚,å‘现的设备集åˆã€‚å›žè°ƒå‡½æ•°ç”±ç”¨æˆ·åˆ›å»ºé€šè¿‡è¯¥æŽ¥å£æ³¨å†Œã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900099 | Operation failed. | **示例:** ```js 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')<sup>(deprecated)</sup> off(type: 'BLEDeviceFind', callback?: Callback<Array<ScanResult>>): void å–æ¶ˆè®¢é˜…BLE设备å‘现上报事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.off('BLEDeviceFind')](js-apis-bluetooth-ble.md#bleoffbledevicefind)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ---------------------------------------- | | type | string | 是 | 填写"BLEDeviceFind"å—符串,表示BLE设备å‘现事件。 | | callback | Callback<Array<[ScanResult](#scanresultdeprecated)>> | å¦ | è¡¨ç¤ºå–æ¶ˆè®¢é˜…BLE设备å‘现事件上报。ä¸å¡«è¯¥å‚æ•°åˆ™å–æ¶ˆè®¢é˜…该type对应的所有回调。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900099 | Operation failed. | **示例:** ```js 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 profile基类。 ### getConnectionDevices<sup>(deprecated)</sup> getConnectionDevices(): Array<string> 获å–已连接设备列表。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[baseProfile.getConnectedDevices](js-apis-bluetooth-baseProfile.md#baseprofilegetconnecteddevices)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **返回值:** | 类型 | 说明 | | ------------------- | ------------- | | Array<string> | 返回已连接设备的地å€åˆ—表。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900004 | Profile not supported. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> getDeviceState(device: string): ProfileConnectionState 获å–设备profile的连接状æ€ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[baseProfile.getConnectionState](js-apis-bluetooth-baseProfile.md#baseprofilegetconnectionstate)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------ | ---- | ------- | | device | string | 是 | 远端设备地å€ã€‚ | **返回值:** | 类型 | 说明 | | ------------------------------------------------- | ----------------------- | | [ProfileConnectionState](#profileconnectionstatedeprecated) | 返回profile的连接状æ€ã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900004 | Profile not supported. | |2900099 | Operation failed. | **示例:** ```js 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 使用A2dpSourceProfile方法之å‰éœ€è¦åˆ›å»ºè¯¥ç±»çš„实例进行æ“作,通过getProfile()æ–¹æ³•æž„é€ æ¤å®žä¾‹ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[a2dp.A2dpSourceProfile](js-apis-bluetooth-a2dp.md#a2dpsourceprofile)替代。 ### connect<sup>(deprecated)</sup> connect(device: string): void å‘起设备的A2dpæœåŠ¡è¿žæŽ¥è¯·æ±‚ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。替代接å£ä»…å‘系统应用开放。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------ | ---- | ------- | | device | string | 是 | 远端设备地å€ã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900004 | Profile not supported. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> disconnect(device: string): void æ–开设备的a2dpæœåŠ¡è¿žæŽ¥ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。替代接å£ä»…å‘系统应用开放。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------ | ---- | ------- | | device | string | 是 | 远端设备地å€ã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900004 | Profile not supported. | |2900099 | Operation failed. | **示例:** ```js 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')<sup>(deprecated)</sup> on(type: 'connectionStateChange', callback: Callback<[StateChangeParam](#statechangeparamdeprecated)>): void 订阅a2dp连接状æ€å˜åŒ–事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[baseProfile.on('connectionStateChange')](js-apis-bluetooth-baseProfile.md#baseprofileonconnectionstatechange)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ---------------------------------------- | | type | string | 是 | 填写"connectionStateChange"å—符串,表示连接状æ€å˜åŒ–事件。 | | callback | Callback<[StateChangeParam](#statechangeparamdeprecated)> | 是 | 表示回调函数的入å‚。 | **返回值:** æ— **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | **示例:** ```js 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')<sup>(deprecated)</sup> off(type: 'connectionStateChange', callback?: Callback<[StateChangeParam](#statechangeparamdeprecated)>): void å–æ¶ˆè®¢é˜…a2dp连接状æ€å˜åŒ–事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[baseProfile.off('connectionStateChange')](js-apis-bluetooth-baseProfile.md#baseprofileoffconnectionstatechange)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ---------------------------------------- | | type | string | 是 | 填写"connectionStateChange"å—符串,表示连接状æ€å˜åŒ–事件。 | | callback | Callback<[StateChangeParam](#statechangeparamdeprecated)> | å¦ | 表示回调函数的入å‚。 | **返回值:** æ— **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | **示例:** ```js 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<sup>(deprecated)</sup> getPlayingState(device: string): PlayingState 获å–è®¾å¤‡çš„æ’æ”¾çжæ€ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[a2dp.A2dpSourceProfile#getPlayingState](js-apis-bluetooth-a2dp.md#getPlayingState)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------ | ---- | ------- | | device | string | 是 | 远端设备地å€ã€‚ | **返回值:** | 类型 | 说明 | | ----------------------------- | ---------- | | [PlayingState](#playingstatedeprecated) | è¿œç«¯è®¾å¤‡çš„æ’æ”¾çжæ€ã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900004 | Profile not supported. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> 使用HandsFreeAudioGatewayProfile方法之å‰éœ€è¦åˆ›å»ºè¯¥ç±»çš„实例进行æ“作,通过getProfile()æ–¹æ³•æž„é€ æ¤å®žä¾‹ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[hfp.HandsFreeAudioGatewayProfile](js-apis-bluetooth-hfp.md#HandsFreeAudioGatewayProfile)替代。 ### connect connect(device: string): void 连接设备的HFPæœåŠ¡ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。替代接å£ä»…å‘系统应用开放。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------ | ---- | ------- | | device | string | 是 | 远端设备地å€ã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900004 | Profile not supported. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> disconnect(device: string): void æ–开连接设备的HFPæœåŠ¡ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。替代接å£ä»…å‘系统应用开放。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------ | ---- | ------- | | device | string | 是 | 远端设备地å€ã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900004 | Profile not supported. | |2900099 | Operation failed. | **示例:** ```js 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')<sup>(deprecated)</sup> on(type: 'connectionStateChange', callback: Callback<[StateChangeParam](#statechangeparamdeprecated)>): void 订阅HFP连接状æ€å˜åŒ–事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[baseProfile.on('connectionStateChange')](js-apis-bluetooth-baseProfile.md#baseprofileonconnectionstatechange)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ---------------------------------------- | | type | string | 是 | 填写"connectionStateChange"å—符串,表示连接状æ€å˜åŒ–事件。 | | callback | Callback<[StateChangeParam](#statechangeparamdeprecated)> | 是 | 表示回调函数的入å‚。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | **示例:** ```js 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')<sup>(deprecated)</sup> off(type: 'connectionStateChange', callback?: Callback<[StateChangeParam](#statechangeparamdeprecated)>): void å–æ¶ˆè®¢é˜…HFP连接状æ€å˜åŒ–事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[baseProfile.off('connectionStateChange')](js-apis-bluetooth-baseProfile.md#baseprofileoffconnectionstatechange)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ---------------------------------------- | | type | string | 是 | 填写"connectionStateChange"å—符串,表示连接状æ€å˜åŒ–事件。 | | callback | Callback<[StateChangeParam](#statechangeparamdeprecated)> | å¦ | 表示回调函数的入å‚。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | **示例:** ```js 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<sup>(deprecated)</sup> 使用HidHostProfile方法之å‰éœ€è¦åˆ›å»ºè¯¥ç±»çš„实例进行æ“作,通过getProfile()æ–¹æ³•æž„é€ æ¤å®žä¾‹ã€‚ ### on('connectionStateChange')<sup>(deprecated)</sup> on(type: 'connectionStateChange', callback: Callback<[StateChangeParam](#statechangeparamdeprecated)>): void 订阅HidHost连接状æ€å˜åŒ–事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[baseProfile.on('connectionStateChange')](js-apis-bluetooth-baseProfile.md#baseprofileonconnectionstatechange)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ---------------------------------------- | | type | string | 是 | 填写"connectionStateChange"å—符串,表示连接状æ€å˜åŒ–事件。 | | callback | Callback<[StateChangeParam](#statechangeparamdeprecated)> | 是 | 表示回调函数的入å‚。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | **示例:** ```js 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')<sup>(deprecated)</sup> off(type: 'connectionStateChange', callback?: Callback<[StateChangeParam](#statechangeparamdeprecated)>): void å–æ¶ˆè®¢é˜…HidHost连接状æ€å˜åŒ–事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[baseProfile.off('connectionStateChange')](js-apis-bluetooth-baseProfile.md#baseprofileoffconnectionstatechange)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ----------------------------------------------------- | ---- | --------------------------------------------------------- | | type | string | 是 | 填写"connectionStateChange"å—符串,表示连接状æ€å˜åŒ–事件。 | | callback | Callback<[StateChangeParam](#statechangeparamdeprecated)> | å¦ | 表示回调函数的入å‚。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | **示例:** ```js 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 使用PanProfile方法之å‰éœ€è¦åˆ›å»ºè¯¥ç±»çš„实例进行æ“作,通过getProfile()æ–¹æ³•æž„é€ æ¤å®žä¾‹ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[pan.PanProfile](js-apis-bluetooth-pan.md#panprofile)替代。 ### on('connectionStateChange')<sup>(deprecated)</sup> on(type: 'connectionStateChange', callback: Callback<[StateChangeParam](#statechangeparamdeprecated)>): void 订阅Pan连接状æ€å˜åŒ–事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[baseProfile.on('connectionStateChange')](js-apis-bluetooth-baseProfile.md#baseprofileonconnectionstatechange)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ---------------------------------------- | | type | string | 是 | 填写"connectionStateChange"å—符串,表示连接状æ€å˜åŒ–事件。 | | callback | Callback<[StateChangeParam](#statechangeparamdeprecated)> | 是 | 表示回调函数的入å‚。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | **示例:** ```js 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')<sup>(deprecated)</sup> off(type: 'connectionStateChange', callback?: Callback<[StateChangeParam](#statechangeparamdeprecated)>): void å–æ¶ˆè®¢é˜…Pan连接状æ€å˜åŒ–事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[baseProfile.off('connectionStateChange')](js-apis-bluetooth-baseProfile.md#baseprofileoffconnectionstatechange)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ----------------------------------------------------- | ---- | --------------------------------------------------------- | | type | string | 是 | 填写"connectionStateChange"å—符串,表示连接状æ€å˜åŒ–事件。 | | callback | Callback<[StateChangeParam](#statechangeparamdeprecated)> | å¦ | 表示回调函数的入å‚。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | **示例:** ```js 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); } ``` ## GattServer server端类,使用server端方法之å‰éœ€è¦åˆ›å»ºè¯¥ç±»çš„实例进行æ“作,通过createGattServer()æ–¹æ³•æž„é€ æ¤å®žä¾‹ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattServer](js-apis-bluetooth-ble.md#GattServer)替代。 ### startAdvertising<sup>(deprecated)</sup> startAdvertising(setting: AdvertiseSetting, advData: AdvertiseData, advResponse?: AdvertiseData): void 开始å‘é€BLE广æ’。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.startAdvertising](js-apis-bluetooth-ble.md#blestartadvertising)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ----------- | ------------------------------------- | ---- | -------------- | | setting | [AdvertiseSetting](#advertisesettingdeprecated) | 是 | BLE广æ’çš„ç›¸å…³å‚æ•°ã€‚ | | advData | [AdvertiseData](#advertisedatadeprecated) | 是 | BLE广æ’包内容。 | | advResponse | [AdvertiseData](#advertisedatadeprecated) | å¦ | BLEå›žå¤æ‰«æè¯·æ±‚回å¤å“应。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> stopAdvertising(): void åœæ¢å‘é€BLE广æ’。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.stopAdvertising](js-apis-bluetooth-ble.md#blestopadvertising)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> addService(service: GattService): void serverç«¯æ·»åŠ æœåŠ¡ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattServer#addService](js-apis-bluetooth-ble.md#addservice)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------- | --------------------------- | ---- | ------------------------ | | service | [GattService](#gattservicedeprecated) | 是 | æœåŠ¡ç«¯çš„serviceæ•°æ®ã€‚BLE广æ’çš„ç›¸å…³å‚æ•° | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900099 | Operation failed. | **示例:** ```js import { BusinessError } from '@ohos.base'; // 创建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; // 创建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; // 创建gattService 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<sup>(deprecated)</sup> removeService(serviceUuid: string): void åˆ é™¤å·²æ·»åŠ çš„æœåŠ¡ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattServer#removeService](js-apis-bluetooth-ble.md#removeservice)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ----------- | ------ | ---- | ---------------------------------------- | | serviceUuid | string | 是 | serviceçš„UUID,例如“00001810-0000-1000-8000-00805F9B34FBâ€ã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900004 | Profile not supported. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> close(): void 关闿œåŠ¡ç«¯åŠŸèƒ½ï¼ŒåŽ»æ³¨å†Œserver在åè®®æ ˆçš„æ³¨å†Œï¼Œè°ƒç”¨è¯¥æŽ¥å£åŽ[GattServer](#gattserver)实例将ä¸èƒ½å†ä½¿ç”¨ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattServer#close](js-apis-bluetooth-ble.md#close)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> notifyCharacteristicChanged(deviceId: string, notifyCharacteristic: NotifyCharacteristic): void server端特å¾å€¼å‘生å˜åŒ–时,主动通知已连接的client设备。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattServer#notifyCharacteristicChanged](js-apis-bluetooth-ble.md#notifycharacteristicchanged)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------------------- | ---------------------------------------- | ---- | --------------------------------------- | | deviceId | string | 是 | 接收通知的client端设备地å€ï¼Œä¾‹å¦‚“XX:XX:XX:XX:XX:XXâ€ã€‚ | | notifyCharacteristic | [NotifyCharacteristic](#notifycharacteristicdeprecated) | 是 | 通知的特å¾å€¼æ•°æ®ã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900099 | Operation failed. | **示例:** ```js import { BusinessError } from '@ohos.base'; // 创建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<sup>(deprecated)</sup> sendResponse(serverResponse: ServerResponse): void server端回å¤client端的读写请求。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattServer#sendResponse](js-apis-bluetooth-ble.md#sendresponse)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------------- | --------------------------------- | ---- | --------------- | | serverResponse | [ServerResponse](#serverresponsedeprecated) | 是 | server端回å¤çš„å“应数æ®ã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900099 | Operation failed. | **示例:** ```js 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')<sup>(deprecated)</sup> on(type: 'characteristicRead', callback: Callback<CharacteristicReadRequest>): void server端订阅特å¾å€¼è¯»è¯·æ±‚事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattServer#on('characteristicRead')](js-apis-bluetooth-ble.md#oncharacteristicread)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ------------------------------------- | | type | string | 是 | 填写"characteristicRead"å—符串,表示特å¾å€¼è¯»è¯·æ±‚事件。 | | callback | Callback<[CharacteristicReadRequest](#characteristicreadrequestdeprecated)> | 是 | 表示回调函数的入å‚,client端å‘é€çš„读请求数æ®ã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | **示例:** ```js 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')<sup>(deprecated)</sup> off(type: 'characteristicRead', callback?: Callback<CharacteristicReadRequest>): void serverç«¯å–æ¶ˆè®¢é˜…特å¾å€¼è¯»è¯·æ±‚事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattServer#off('characteristicRead')](js-apis-bluetooth-ble.md#offcharacteristicread)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ---------------------------------------- | | type | string | 是 | 填写"characteristicRead"å—符串,表示特å¾å€¼è¯»è¯·æ±‚事件。 | | callback | Callback<[CharacteristicReadRequest](#characteristicreadrequestdeprecated)> | å¦ | è¡¨ç¤ºå–æ¶ˆè®¢é˜…特å¾å€¼è¯»è¯·æ±‚事件上报。ä¸å¡«è¯¥å‚æ•°åˆ™å–æ¶ˆè®¢é˜…该type对应的所有回调。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | **示例:** ```js 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')<sup>(deprecated)</sup> on(type: 'characteristicWrite', callback: Callback<CharacteristicWriteRequest>): void server端订阅特å¾å€¼å†™è¯·æ±‚事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattServer#on('characteristicWrite')](js-apis-bluetooth-ble.md#oncharacteristicwrite)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | -------------------------------------- | | type | string | 是 | 填写"characteristicWrite"å—符串,表示特å¾å€¼å†™è¯·æ±‚事件。 | | callback | Callback<[CharacteristicWriteRequest](#characteristicwriterequestdeprecated)> | 是 | 表示回调函数的入å‚,client端å‘é€çš„写请求数æ®ã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | **示例:** ```js 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')<sup>(deprecated)</sup> off(type: 'characteristicWrite', callback?: Callback<CharacteristicWriteRequest>): void serverç«¯å–æ¶ˆè®¢é˜…特å¾å€¼å†™è¯·æ±‚事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattServer#off('characteristicWrite')](js-apis-bluetooth-ble.md#offcharacteristicwrite)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ---------------------------------------- | | type | string | 是 | 填写"characteristicWrite"å—符串,表示特å¾å€¼å†™è¯·æ±‚事件。 | | callback | Callback<[CharacteristicWriteRequest](#characteristicwriterequestdeprecated)> | å¦ | è¡¨ç¤ºå–æ¶ˆè®¢é˜…特å¾å€¼å†™è¯·æ±‚事件上报。ä¸å¡«è¯¥å‚æ•°åˆ™å–æ¶ˆè®¢é˜…该type对应的所有回调。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | **示例:** ```js 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')<sup>(deprecated)</sup> on(type: 'descriptorRead', callback: Callback<DescriptorReadRequest>): void server端订阅æè¿°ç¬¦è¯»è¯·æ±‚事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattServer#on('descriptorRead')](js-apis-bluetooth-ble.md#ondescriptorread)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | --------------------------------- | | type | string | 是 | 填写"descriptorRead"å—符串,表示æè¿°ç¬¦è¯»è¯·æ±‚事件。 | | callback | Callback<[DescriptorReadRequest](#descriptorreadrequestdeprecated)> | 是 | 表示回调函数的入å‚,client端å‘é€çš„读请求数æ®ã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | **示例:** ```js 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')<sup>(deprecated)</sup> off(type: 'descriptorRead', callback?: Callback<DescriptorReadRequest>): void serverç«¯å–æ¶ˆè®¢é˜…æè¿°ç¬¦è¯»è¯·æ±‚事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattServer#off('descriptorRead')](js-apis-bluetooth-ble.md#offdescriptorread)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ---------------------------------------- | | type | string | 是 | 填写"descriptorRead"å—符串,表示æè¿°ç¬¦è¯»è¯·æ±‚事件。 | | callback | Callback<[DescriptorReadRequest](#descriptorreadrequestdeprecated)> | å¦ | è¡¨ç¤ºå–æ¶ˆè®¢é˜…æè¿°ç¬¦è¯»è¯·æ±‚事件上报。ä¸å¡«è¯¥å‚æ•°åˆ™å–æ¶ˆè®¢é˜…该type对应的所有回调。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | **示例:** ```js 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')<sup>(deprecated)</sup> on(type: 'descriptorWrite', callback: Callback<DescriptorWriteRequest>): void server端订阅æè¿°ç¬¦å†™è¯·æ±‚事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattServer#on('descriptorWrite')](js-apis-bluetooth-ble.md#ondescriptorwrite)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ---------------------------------- | | type | string | 是 | 填写"descriptorWrite"å—符串,表示æè¿°ç¬¦å†™è¯·æ±‚事件。 | | callback | Callback<[DescriptorWriteRequest](#descriptorwriterequestdeprecated)> | 是 | 表示回调函数的入å‚,client端å‘é€çš„写请求数æ®ã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | **示例:** ```js 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')<sup>(deprecated)</sup> off(type: 'descriptorWrite', callback?: Callback<DescriptorWriteRequest>): void serverç«¯å–æ¶ˆè®¢é˜…æè¿°ç¬¦å†™è¯·æ±‚事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattServer#off('descriptorWrite')](js-apis-bluetooth-ble.md#offdescriptorwrite)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ---------------------------------------- | | type | string | 是 | 填写"descriptorWrite"å—符串,表示æè¿°ç¬¦å†™è¯·æ±‚事件。 | | callback | Callback<[DescriptorWriteRequest](#descriptorwriterequestdeprecated)> | å¦ | è¡¨ç¤ºå–æ¶ˆè®¢é˜…æè¿°ç¬¦å†™è¯·æ±‚事件上报。ä¸å¡«è¯¥å‚æ•°åˆ™å–æ¶ˆè®¢é˜…该type对应的所有回调。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | **示例:** ```js 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')<sup>(deprecated)</sup> on(type: 'connectStateChange', callback: Callback<BLEConnectChangedState>): void server端订阅BLE连接状æ€å˜åŒ–事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattServer#on('connectionStateChange')](js-apis-bluetooth-ble.md#onconnectionstatechange)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ---------------------------------------- | | type | string | 是 | 填写"connectStateChange"å—符串,表示BLE连接状æ€å˜åŒ–事件。 | | callback | Callback<[BLEConnectChangedState](#bleconnectchangedstatedeprecated)> | 是 | 表示回调函数的入å‚,连接状æ€ã€‚ | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | **示例:** ```js 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')<sup>(deprecated)</sup> off(type: 'connectStateChange', callback?: Callback<BLEConnectChangedState>): void serverç«¯å–æ¶ˆè®¢é˜…BLE连接状æ€å˜åŒ–事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattServer#off('connectionStateChange')](js-apis-bluetooth-ble.md#offconnectionstatechange)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ---------------------------------------- | | type | string | 是 | 填写"connectStateChange"å—符串,表示BLE连接状æ€å˜åŒ–事件。 | | callback | Callback<[BLEConnectChangedState](#bleconnectchangedstatedeprecated)> | å¦ | è¡¨ç¤ºå–æ¶ˆè®¢é˜…BLE连接状æ€å˜åŒ–事件。ä¸å¡«è¯¥å‚æ•°åˆ™å–æ¶ˆè®¢é˜…该type对应的所有回调。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | **示例:** ```js 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 client端类,使用client端方法之å‰éœ€è¦åˆ›å»ºè¯¥ç±»çš„实例进行æ“作,通过createGattClientDevice(deviceId: string)æ–¹æ³•æž„é€ æ¤å®žä¾‹ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattClientDevice](js-apis-bluetooth-ble.md#gattclientdevice)替代。 ### connect<sup>(deprecated)</sup> connect(): void client端å‘起连接远端è“牙低功耗设备。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattClientDevice#connect](js-apis-bluetooth-ble.md#connect)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> disconnect(): void client端æ–开与远端è“牙低功耗设备的连接。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattClientDevice#disconnect](js-apis-bluetooth-ble.md#disconnect)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> close(): void å…³é—客户端功能,注销client在åè®®æ ˆçš„æ³¨å†Œï¼Œè°ƒç”¨è¯¥æŽ¥å£åŽ[GattClientDevice](#gattclientdevice)实例将ä¸èƒ½å†ä½¿ç”¨ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattClientDevice#close](js-apis-bluetooth-ble.md#close)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900003 | Bluetooth disabled. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> getServices(callback: AsyncCallback<Array<GattService>>): void client端获å–è“牙低功耗设备的所有æœåŠ¡ï¼Œå³æœåŠ¡å‘现。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattClientDevice#getServices](js-apis-bluetooth-ble.md#getservices)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ------------------------ | | callback | AsyncCallback<Array<[GattService](#gattservicedeprecated)>> | 是 | client进行æœåŠ¡å‘现,通过注册回调函数获å–。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> getServices(): Promise<Array<GattService>> client端获å–è“牙低功耗设备的所有æœåŠ¡ï¼Œå³æœåŠ¡å‘现。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattClientDevice#getServices](js-apis-bluetooth-ble.md#getservices-1)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **返回值:** | 类型 | 说明 | | ---------------------------------------- | --------------------------- | | Promise<Array<[GattService](#gattservicedeprecated)>> | client进行æœåŠ¡å‘现,通过promiseå½¢å¼èŽ·å–。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> readCharacteristicValue(characteristic: BLECharacteristic, callback: AsyncCallback<BLECharacteristic>): void client端读å–è“牙低功耗设备特定æœåŠ¡çš„ç‰¹å¾å€¼ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattClientDevice#readCharacteristicValue](js-apis-bluetooth-ble.md#readcharacteristicvalue)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------------- | ---------------------------------------- | ---- | ----------------------- | | characteristic | [BLECharacteristic](#blecharacteristicdeprecated) | 是 | 待读å–的特å¾å€¼ã€‚ | | callback | AsyncCallback<[BLECharacteristic](#blecharacteristicdeprecated)> | 是 | client读å–特å¾å€¼ï¼Œé€šè¿‡æ³¨å†Œå›žè°ƒå‡½æ•°èŽ·å–。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2901000 | Read forbidden. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> readCharacteristicValue(characteristic: BLECharacteristic): Promise<BLECharacteristic> client端读å–è“牙低功耗设备特定æœåŠ¡çš„ç‰¹å¾å€¼ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattClientDevice#readCharacteristicValue](js-apis-bluetooth-ble.md#readcharacteristicvalue-1)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------------- | --------------------------------------- | ---- | -------- | | characteristic | [BLECharacteristic](#blecharacteristicdeprecated) | 是 | 待读å–的特å¾å€¼ã€‚ | **返回值:** | 类型 | 说明 | | ---------------------------------------- | -------------------------- | | Promise<[BLECharacteristic](#blecharacteristicdeprecated)> | client读å–特å¾å€¼ï¼Œé€šè¿‡promiseå½¢å¼èŽ·å–。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2901000 | Read forbidden. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> readDescriptorValue(descriptor: BLEDescriptor, callback: AsyncCallback<BLEDescriptor>): void client端读å–è“牙低功耗设备特定的特å¾åŒ…å«çš„æè¿°ç¬¦ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattClientDevice#readDescriptorValue](js-apis-bluetooth-ble.md#readdescriptorvalue)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ---------- | ---------------------------------------- | ---- | ----------------------- | | descriptor | [BLEDescriptor](#bledescriptordeprecated) | 是 | 待读å–çš„æè¿°ç¬¦ã€‚ | | callback | AsyncCallback<[BLEDescriptor](#bledescriptordeprecated)> | 是 | clientè¯»å–æè¿°ç¬¦ï¼Œé€šè¿‡æ³¨å†Œå›žè°ƒå‡½æ•°èŽ·å–。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2901000 | Read forbidden. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> readDescriptorValue(descriptor: BLEDescriptor): Promise<BLEDescriptor> client端读å–è“牙低功耗设备特定的特å¾åŒ…å«çš„æè¿°ç¬¦ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattClientDevice#readDescriptorValue](js-apis-bluetooth-ble.md#readdescriptorvalue-1)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ---------- | ------------------------------- | ---- | -------- | | descriptor | [BLEDescriptor](#bledescriptordeprecated) | 是 | 待读å–çš„æè¿°ç¬¦ã€‚ | **返回值:** | 类型 | 说明 | | ---------------------------------------- | -------------------------- | | Promise<[BLEDescriptor](#bledescriptordeprecated)> | clientè¯»å–æè¿°ç¬¦ï¼Œé€šè¿‡promiseå½¢å¼èŽ·å–。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2901000 | Read forbidden. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> writeCharacteristicValue(characteristic: BLECharacteristic): void client端å‘低功耗è“牙设备写入特定的特å¾å€¼ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattClientDevice#writeCharacteristicValue](js-apis-bluetooth-ble.md#writecharacteristicvalue)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------------- | --------------------------------------- | ---- | ------------------- | | characteristic | [BLECharacteristic](#blecharacteristicdeprecated) | 是 | è“牙设备特å¾å¯¹åº”的二进制值åŠå…¶å®ƒå‚数。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2901001 | Write forbidden. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> writeDescriptorValue(descriptor: BLEDescriptor): void client端å‘低功耗è“牙设备特定的æè¿°ç¬¦å†™å…¥äºŒè¿›åˆ¶æ•°æ®ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattClientDevice#writeCharacteristicValue](js-apis-bluetooth-ble.md#writecharacteristicvalue-1)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ---------- | ------------------------------- | ---- | ------------------ | | descriptor | [BLEDescriptor](#bledescriptordeprecated) | 是 | è“牙设备æè¿°ç¬¦çš„二进制值åŠå…¶å®ƒå‚数。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2901001 | Write forbidden. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> setBLEMtuSize(mtu: number): void clientå商远端è“ç‰™ä½ŽåŠŸè€—è®¾å¤‡çš„æœ€å¤§ä¼ è¾“å•元(Maximum Transmission Unit, MTU),调用[connect](#connect)接å£è¿žæŽ¥æˆåŠŸåŽæ‰èƒ½ä½¿ç”¨ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattClientDevice#setBLEMtuSize](js-apis-bluetooth-ble.md#setBLEMtuSize)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ---- | ------ | ---- | -------------- | | mtu | number | 是 | 设置范围为22~512å—节。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> setNotifyCharacteristicChanged(characteristic: BLECharacteristic, enable: boolean): void 呿œåŠ¡ç«¯å‘é€è®¾ç½®é€šçŸ¥æ¤ç‰¹å¾å€¼è¯·æ±‚。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattClientDevice#setCharacteristicChangeNotification](js-apis-bluetooth-ble.md#setcharacteristicchangenotification)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------------- | --------------------------------------- | ---- | ----------------------------- | | characteristic | [BLECharacteristic](#blecharacteristicdeprecated) | 是 | è“牙低功耗特å¾ã€‚ | | enable | boolean | 是 | å¯ç”¨æŽ¥æ”¶notify设置为true,å¦åˆ™è®¾ç½®ä¸ºfalse。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900099 | Operation failed. | **示例:** ```js import { BusinessError } from '@ohos.base'; // 创建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')<sup>(deprecated)</sup> on(type: 'BLECharacteristicChange', callback: Callback<BLECharacteristic>): void 订阅è“牙低功耗设备的特å¾å€¼å˜åŒ–事件。需è¦å…ˆè°ƒç”¨setNotifyCharacteristicChangedæŽ¥å£æ‰èƒ½æŽ¥æ”¶server端的通知。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattClientDevice#on('BLECharacteristicChange')](js-apis-bluetooth-ble.md#onblecharacteristicchange)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ---------------------------------------- | | type | string | 是 | 填写"BLECharacteristicChange"å—符串,表示特å¾å€¼å˜åŒ–事件。 | | callback | Callback<[BLECharacteristic](#blecharacteristicdeprecated)> | 是 | 表示è“牙低功耗设备的特å¾å€¼å˜åŒ–事件的回调函数。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |801 | Capability not supported. | **示例:** ```js 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')<sup>(deprecated)</sup> off(type: 'BLECharacteristicChange', callback?: Callback<BLECharacteristic>): void å–æ¶ˆè®¢é˜…è“牙低功耗设备的特å¾å€¼å˜åŒ–事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattClientDevice#off('BLECharacteristicChange')](js-apis-bluetooth-ble.md#offblecharacteristicchange)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ---------------------------------------- | | type | string | 是 | 填写"BLECharacteristicChange"å—符串,表示特å¾å€¼å˜åŒ–事件。 | | callback | Callback<[BLECharacteristic](#blecharacteristicdeprecated)> | å¦ | è¡¨ç¤ºå–æ¶ˆè®¢é˜…è“牙低功耗设备的特å¾å€¼å˜åŒ–事件。ä¸å¡«è¯¥å‚æ•°åˆ™å–æ¶ˆè®¢é˜…该type对应的所有回调。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |801 | Capability not supported. | **示例:** ```js 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')<sup>(deprecated)</sup> on(type: 'BLEConnectionStateChange', callback: Callback<BLEConnectChangedState>): void client端订阅è“牙低功耗设备的连接状æ€å˜åŒ–事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattClientDevice#on('BLEConnectionStateChange')](js-apis-bluetooth-ble.md#onbleconnectionstatechange)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ---------------------------------------- | | type | string | 是 | 填写"BLEConnectionStateChange"å—符串,表示连接状æ€å˜åŒ–事件。 | | callback | Callback<[BLEConnectChangedState](#bleconnectchangedstatedeprecated)> | 是 | 表示连接状æ€ï¼Œå·²è¿žæŽ¥æˆ–æ–开。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |801 | Capability not supported. | **示例:** ```js 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')<sup>(deprecated)</sup> off(type: 'BLEConnectionStateChange', callback?: Callback<BLEConnectChangedState>): void å–æ¶ˆè®¢é˜…è“牙低功耗设备的连接状æ€å˜åŒ–事件。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattClientDevice#off('BLEConnectionStateChange')](js-apis-bluetooth-ble.md#offbleconnectionstatechange)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | ---------------------------------------- | ---- | ---------------------------------------- | | type | string | 是 | 填写"BLEConnectionStateChange"å—符串,表示连接状æ€å˜åŒ–事件。 | | callback | Callback<[BLEConnectChangedState](#bleconnectchangedstatedeprecated)> | å¦ | è¡¨ç¤ºå–æ¶ˆè®¢é˜…è“牙低功耗设备的连接状æ€å˜åŒ–事件。ä¸å¡«è¯¥å‚æ•°åˆ™å–æ¶ˆè®¢é˜…该type对应的所有回调。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |801 | Capability not supported. | **示例:** ```js 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<sup>(deprecated)</sup> getDeviceName(callback: AsyncCallback<string>): void client获å–远端è“牙低功耗设备å。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattClientDevice#getDeviceName](js-apis-bluetooth-ble.md#getdevicename)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | --------------------------- | ---- | ------------------------------- | | callback | AsyncCallback<string> | 是 | client获å–对端server设备å,通过注册回调函数获å–。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> getDeviceName(): Promise<string> client获å–远端è“牙低功耗设备å。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattClientDevice#getDeviceName](js-apis-bluetooth-ble.md#getdevicename-1)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **返回值:** | 类型 | 说明 | | --------------------- | ---------------------------------- | | Promise<string> | client获å–对端server设备å,通过promiseå½¢å¼èŽ·å–。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | |801 | Capability not supported. | |2900001 | Service stopped. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> getRssiValue(callback: AsyncCallback<number>): void client获å–远端è“牙低功耗设备的信å·å¼ºåº¦ (Received Signal Strength Indication, RSSI),调用[connect](#connect)接å£è¿žæŽ¥æˆåŠŸåŽæ‰èƒ½ä½¿ç”¨ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattClientDevice#getRssiValue](js-apis-bluetooth-ble.md#getrssivalue)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | -------- | --------------------------- | ---- | ------------------------------ | | callback | AsyncCallback<number> | 是 | 返回信å·å¼ºåº¦ï¼Œå•ä½ dBm,通过注册回调函数获å–。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. | |801 | Capability not supported. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> getRssiValue(): Promise<number> client获å–远端è“牙低功耗设备的信å·å¼ºåº¦ (Received Signal Strength Indication, RSSI),调用[connect](#connect)接å£è¿žæŽ¥æˆåŠŸåŽæ‰èƒ½ä½¿ç”¨ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattClientDevice#getRssiValue](js-apis-bluetooth-ble.md#getrssivalue-1)替代。 **éœ€è¦æƒé™**:ohos.permission.ACCESS_BLUETOOTH **系统能力**:SystemCapability.Communication.Bluetooth.Core。 **返回值:** | 类型 | 说明 | | --------------------- | --------------------------------- | | Promise<number> | 返回信å·å¼ºåº¦ï¼Œå•ä½ dBm,通过promiseå½¢å¼èŽ·å–。 | **错误ç **: 以下错误ç 的详细介ç»è¯·å‚è§[è“牙æœåŠ¡å系统错误ç ](errorcode-bluetoothManager.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | ---------------------------- | |201 | Permission denied. | |401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. | |801 | Capability not supported. | |2900099 | Operation failed. | **示例:** ```js 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<sup>(deprecated)</sup> æžšä¸¾ï¼Œæ‰«ææ¨¡å¼ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.ScanMode](js-apis-bluetooth-connection.md#scanmode)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 值 | 说明 | | ---------------------------------------- | ---- | --------------- | | SCAN_MODE_NONE | 0 | æ²¡æœ‰æ‰«ææ¨¡å¼ã€‚ | | SCAN_MODE_CONNECTABLE | 1 | å¯è¿žæŽ¥æ‰«ææ¨¡å¼ã€‚ | | SCAN_MODE_GENERAL_DISCOVERABLE | 2 | generalå‘现模å¼ã€‚ | | SCAN_MODE_LIMITED_DISCOVERABLE | 3 | limitedå‘现模å¼ã€‚ | | SCAN_MODE_CONNECTABLE_GENERAL_DISCOVERABLE | 4 | å¯è¿žæŽ¥generalå‘现模å¼ã€‚ | | SCAN_MODE_CONNECTABLE_LIMITED_DISCOVERABLE | 5 | å¯è¿žæŽ¥limitedå‘现模å¼ã€‚ | ## BondState<sup>(deprecated)</sup> 枚举,é…对状æ€ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.BondState](js-apis-bluetooth-connection.md#bondstate)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 值 | 说明 | | ------------------ | ---- | ------ | | BOND_STATE_INVALID | 0 | æ— æ•ˆçš„é…对。 | | BOND_STATE_BONDING | 1 | æ£åœ¨é…对。 | | BOND_STATE_BONDED | 2 | å·²é…对。 | ## SppOption<sup>(deprecated)</sup> æè¿°sppçš„é…ç½®å‚æ•°ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[socket.SppOption](js-apis-bluetooth-socket.md#sppoptions)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 类型 | å¯è¯» | å¯å†™ | 说明 | | ------ | ------------------- | ---- | ---- | ----------- | | uuid | string | 是 | 是 | spp啿®çš„uuid。 | | secure | boolean | 是 | 是 | æ˜¯å¦æ˜¯å®‰å…¨é€šé“。 | | type | [SppType](#spptypedeprecated) | 是 | 是 | Spp链路类型。 | ## SppType<sup>(deprecated)</sup> 枚举,Spp链路类型。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[socket.SppType](js-apis-bluetooth-socket.md#spptype)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 值 | 说明 | | ---------- | ---- | ------------- | | SPP_RFCOMM | 0 | 表示rfcomm链路类型。 | ## GattService<sup>(deprecated)</sup> æè¿°service的接å£å‚数定义。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.GattService](js-apis-bluetooth-ble.md#gattservice)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 类型 | å¯è¯» | å¯å†™ | 说明 | | --------------- | ---------------------------------------- | ---- | ---- | ---------------------------------------- | | serviceUuid | string | 是 | 是 | 特定æœåŠ¡ï¼ˆservice)的UUID,例如:00001888-0000-1000-8000-00805f9b34fb。 | | isPrimary | boolean | 是 | 是 | 如果是主æœåŠ¡è®¾ç½®ä¸ºtrue,å¦åˆ™è®¾ç½®ä¸ºfalse。 | | characteristics | Array<[BLECharacteristic](#blecharacteristicdeprecated)> | 是 | 是 | 当剿œåŠ¡åŒ…å«çš„特å¾åˆ—表。 | | includeServices | Array<[GattService](#gattservicedeprecated)> | 是 | 是 | 当剿œåŠ¡ä¾èµ–的其它æœåŠ¡ã€‚ | ## BLECharacteristic<sup>(deprecated)</sup> æè¿°characteristic的接å£å‚数定义。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.BLECharacteristic](js-apis-bluetooth-ble.md#blecharacteristic)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 类型 | å¯è¯» | å¯å†™ | 说明 | | ------------------- | ---------------------------------------- | ---- | ---- | ---------------------------------------- | | serviceUuid | string | 是 | 是 | 特定æœåŠ¡ï¼ˆservice)的UUID,例如:00001888-0000-1000-8000-00805f9b34fb。 | | characteristicUuid | string | 是 | 是 | 特定特å¾ï¼ˆcharacteristic)的UUID,例如:00002a11-0000-1000-8000-00805f9b34fb。 | | characteristicValue | ArrayBuffer | 是 | 是 | 特å¾å¯¹åº”的二进制值。 | | descriptors | Array<[BLEDescriptor](#bledescriptordeprecated)> | 是 | 是 | 特定特å¾çš„æè¿°ç¬¦åˆ—表。 | ## BLEDescriptor<sup>(deprecated)</sup> æè¿°descriptor的接å£å‚数定义。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.BLEDescriptor](js-apis-bluetooth-ble.md#bledescriptor)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 类型 | å¯è¯» | å¯å†™ | 说明 | | ------------------ | ----------- | ---- | ---- | ---------------------------------------- | | serviceUuid | string | 是 | 是 | 特定æœåŠ¡ï¼ˆservice)的UUID,例如:00001888-0000-1000-8000-00805f9b34fb。 | | characteristicUuid | string | 是 | 是 | 特定特å¾ï¼ˆcharacteristic)的UUID,例如:00002a11-0000-1000-8000-00805f9b34fb。 | | descriptorUuid | string | 是 | 是 | æè¿°ç¬¦ï¼ˆdescriptor)的UUID,例如:00002902-0000-1000-8000-00805f9b34fb。 | | descriptorValue | ArrayBuffer | 是 | 是 | æè¿°ç¬¦å¯¹åº”的二进制值。 | ## NotifyCharacteristic<sup>(deprecated)</sup> æè¿°server端特å¾å€¼å˜åŒ–æ—¶å‘é€çš„特å¾é€šçŸ¥å‚数定义。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.NotifyCharacteristic](js-apis-bluetooth-ble.md#notifycharacteristic)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 类型 | å¯è¯» | å¯å†™ | 说明 | | ------------------- | ----------- | ---- | ---- | ---------------------------------------- | | serviceUuid | string | 是 | 是 | 特定æœåŠ¡ï¼ˆservice)的UUID,例如:00001888-0000-1000-8000-00805f9b34fb。 | | characteristicUuid | string | 是 | 是 | 特定特å¾ï¼ˆcharacteristic)的UUID,例如:00002a11-0000-1000-8000-00805f9b34fb。 | | characteristicValue | ArrayBuffer | 是 | 是 | 特å¾å¯¹åº”的二进制值。 | | confirm | boolean | 是 | 是 | 如果是notification则对端回å¤ç¡®è®¤è®¾ç½®ä¸ºtrue,如果是indication则对端ä¸éœ€è¦å›žå¤ç¡®è®¤è®¾ç½®ä¸ºfalse。 | ## CharacteristicReadRequest<sup>(deprecated)</sup> æè¿°serverç«¯è®¢é˜…åŽæ”¶åˆ°çš„特å¾å€¼è¯»è¯·æ±‚äº‹ä»¶å‚æ•°ç»“构。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.CharacteristicReadRequest](js-apis-bluetooth-ble.md#characteristicreadrequest)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 类型 | å¯è¯» | å¯å†™ | 说明 | | ------------------ | ------ | ---- | ---- | ---------------------------------------- | | deviceId | string | 是 | å¦ | 表示å‘é€ç‰¹å¾å€¼è¯»è¯·æ±‚的远端设备地å€ï¼Œä¾‹å¦‚:"XX:XX:XX:XX:XX:XX"。 | | transId | number | 是 | å¦ | è¡¨ç¤ºè¯»è¯·æ±‚çš„ä¼ è¾“ID,server端回å¤å“应时需填写相åŒçš„ä¼ è¾“ID。 | | offset | number | 是 | å¦ | 表示读特å¾å€¼æ•°æ®çš„èµ·å§‹ä½ç½®ã€‚例如:k表示从第k个å—节开始读,server端回å¤å“应时需填写相åŒçš„offset。 | | characteristicUuid | string | 是 | å¦ | 特定特å¾ï¼ˆcharacteristic)的UUID,例如:00002a11-0000-1000-8000-00805f9b34fb。 | | serviceUuid | string | 是 | å¦ | 特定æœåŠ¡ï¼ˆservice)的UUID,例如:00001888-0000-1000-8000-00805f9b34fb。 | ## CharacteristicWriteRequest<sup>(deprecated)</sup> æè¿°serverç«¯è®¢é˜…åŽæ”¶åˆ°çš„特å¾å€¼å†™è¯·æ±‚äº‹ä»¶å‚æ•°ç»“构。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.CharacteristicWriteRequest](js-apis-bluetooth-ble.md#characteristicwriterequest)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 类型 | å¯è¯» | å¯å†™ | 说明 | | ------------------ | ------ | ---- | ---- | ---------------------------------------- | | deviceId | string | 是 | å¦ | 表示å‘é€ç‰¹å¾å€¼å†™è¯·æ±‚的远端设备地å€ï¼Œä¾‹å¦‚:"XX:XX:XX:XX:XX:XX"。 | | transId | number | 是 | å¦ | è¡¨ç¤ºå†™è¯·æ±‚çš„ä¼ è¾“ID,server端回å¤å“应时需填写相åŒçš„ä¼ è¾“ID。 | | offset | number | 是 | å¦ | 表示写特å¾å€¼æ•°æ®çš„èµ·å§‹ä½ç½®ã€‚例如:k表示从第k个å—节开始写,server端回å¤å“应时需填写相åŒçš„offset。 | | isPrep | boolean | 是 | å¦ | 表示写请求是å¦ç«‹å³æ‰§è¡Œã€‚trueè¡¨ç¤ºç«‹å³æ‰§è¡Œã€‚ | | needRsp | boolean | 是 | å¦ | 表示是å¦è¦ç»™client端回å¤å“应。true表示需è¦å›žå¤ã€‚ | | value | ArrayBuffer | 是 | å¦ | 表示写入的æè¿°ç¬¦äºŒè¿›åˆ¶æ•°æ®ã€‚ | | characteristicUuid | string | 是 | å¦ | 特定特å¾ï¼ˆcharacteristic)的UUID,例如:00002a11-0000-1000-8000-00805f9b34fb。 | | serviceUuid | string | 是 | å¦ | 特定æœåŠ¡ï¼ˆservice)的UUID,例如:00001888-0000-1000-8000-00805f9b34fb。 | ## DescriptorReadRequest<sup>(deprecated)</sup> æè¿°serverç«¯è®¢é˜…åŽæ”¶åˆ°çš„æè¿°ç¬¦è¯»è¯·æ±‚äº‹ä»¶å‚æ•°ç»“构。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.DescriptorReadRequest](js-apis-bluetooth-ble.md#descriptorreadrequest)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 类型 | å¯è¯» | å¯å†™ | 说明 | | ------------------ | ------ | ---- | ---- | ---------------------------------------- | | deviceId | string | 是 | å¦ | 表示å‘é€æè¿°ç¬¦è¯»è¯·æ±‚çš„è¿œç«¯è®¾å¤‡åœ°å€ï¼Œä¾‹å¦‚:"XX:XX:XX:XX:XX:XX"。 | | transId | number | 是 | å¦ | è¡¨ç¤ºè¯»è¯·æ±‚çš„ä¼ è¾“ID,server端回å¤å“应时需填写相åŒçš„ä¼ è¾“ID。 | | offset | number | 是 | å¦ | 表示读æè¿°ç¬¦æ•°æ®çš„èµ·å§‹ä½ç½®ã€‚例如:k表示从第k个å—节开始读,server端回å¤å“应时需填写相åŒçš„offset。 | | descriptorUuid | string | 是 | å¦ | 表示æè¿°ç¬¦ï¼ˆdescriptor)的UUID,例如:00002902-0000-1000-8000-00805f9b34fb。 | | characteristicUuid | string | 是 | å¦ | 特定特å¾ï¼ˆcharacteristic)的UUID,例如:00002a11-0000-1000-8000-00805f9b34fb。 | | serviceUuid | string | 是 | å¦ | 特定æœåŠ¡ï¼ˆservice)的UUID,例如:00001888-0000-1000-8000-00805f9b34fb。 | ## DescriptorWriteRequest<sup>(deprecated)</sup> æè¿°serverç«¯è®¢é˜…åŽæ”¶åˆ°çš„æè¿°ç¬¦å†™è¯·æ±‚äº‹ä»¶å‚æ•°ç»“构。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.DescriptorWriteRequest](js-apis-bluetooth-ble.md#descriptorwriterequest)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 类型 | å¯è¯» | å¯å†™ | 说明 | | ------------------ | ----------- | ---- | ---- | ---------------------------------------- | | deviceId | string | 是 | å¦ | 表示å‘é€æè¿°ç¬¦å†™è¯·æ±‚çš„è¿œç«¯è®¾å¤‡åœ°å€ï¼Œä¾‹å¦‚:"XX:XX:XX:XX:XX:XX"。 | | transId | number | 是 | å¦ | è¡¨ç¤ºå†™è¯·æ±‚çš„ä¼ è¾“ID,server端回å¤å“应时需填写相åŒçš„ä¼ è¾“ID。 | | offset | number | 是 | å¦ | 表示写æè¿°ç¬¦æ•°æ®çš„èµ·å§‹ä½ç½®ã€‚例如:k表示从第k个å—节开始写,server端回å¤å“应时需填写相åŒçš„offset。 | | isPrep | boolean | 是 | å¦ | 表示写请求是å¦ç«‹å³æ‰§è¡Œã€‚ | | needRsp | boolean | 是 | å¦ | 表示是å¦è¦ç»™client端回å¤å“应。 | | value | ArrayBuffer | 是 | å¦ | 表示写入的æè¿°ç¬¦äºŒè¿›åˆ¶æ•°æ®ã€‚ | | descriptorUuid | string | 是 | å¦ | 表示æè¿°ç¬¦ï¼ˆdescriptor)的UUID,例如:00002902-0000-1000-8000-00805f9b34fb。 | | characteristicUuid | string | 是 | å¦ | 特定特å¾ï¼ˆcharacteristic)的UUID,例如:00002a11-0000-1000-8000-00805f9b34fb。 | | serviceUuid | string | 是 | å¦ | 特定æœåŠ¡ï¼ˆservice)的UUID,例如:00001888-0000-1000-8000-00805f9b34fb。 | ## ServerResponse<sup>(deprecated)</sup> æè¿°server端回å¤client端读/写请求的å“åº”å‚æ•°ç»“构。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.ServerResponse](js-apis-bluetooth-ble.md#serverresponse)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 类型 | å¯è¯» | å¯å†™ | 说明 | | -------- | ----------- | ---- | ---- | -------------------------------------- | | deviceId | string | 是 | å¦ | 表示远端设备地å€ï¼Œä¾‹å¦‚:"XX:XX:XX:XX:XX:XX"。 | | transId | number | 是 | å¦ | è¡¨ç¤ºè¯·æ±‚çš„ä¼ è¾“ID,与订阅的读/写请求事件æºå¸¦çš„IDä¿æŒä¸€è‡´ã€‚ | | status | number | 是 | å¦ | 表示å“应的状æ€ï¼Œè®¾ç½®ä¸º0å³å¯ï¼Œè¡¨ç¤ºæ£å¸¸ã€‚ | | offset | number | 是 | å¦ | 表示请求的读/写起始ä½ç½®ï¼Œä¸Žè®¢é˜…的读/写请求事件æºå¸¦çš„offsetä¿æŒä¸€è‡´ã€‚ | | value | ArrayBuffer | 是 | å¦ | 表示回å¤å“应的二进制数æ®ã€‚ | ## BLEConnectChangedState<sup>(deprecated)</sup> æè¿°Gatt profile连接状æ€ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[BLEConnectionChangeState](js-apis-bluetooth-ble.md#bleconnectionchangestate)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 类型 | å¯è¯» | å¯å†™ | 说明 | | -------- | ------------------------------------------------- | ---- | ---- | --------------------------------------------- | | deviceId | string | 是 | å¦ | 表示远端设备地å€ï¼Œä¾‹å¦‚:"XX:XX:XX:XX:XX:XX"。 | | state | [ProfileConnectionState](#profileconnectionstatedeprecated) | 是 | 是 | 表示BLE连接状æ€çš„æžšä¸¾ã€‚ | ## ProfileConnectionState<sup>(deprecated)</sup> 枚举,è“牙设备的profile连接状æ€ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[constant.ProfileConnectionState](js-apis-bluetooth-constant.md#profileconnectionstate)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 值 | 说明 | | ------------------- | ---- | -------------- | | STATE_DISCONNECTED | 0 | 表示profileå·²æ–连。 | | STATE_CONNECTING | 1 | 表示profileæ£åœ¨è¿žæŽ¥ã€‚ | | STATE_CONNECTED | 2 | 表示profile已连接。 | | STATE_DISCONNECTING | 3 | 表示profileæ£åœ¨æ–连。 | ## ScanFilter<sup>(deprecated)</sup> 扫æè¿‡æ»¤å‚数。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.ScanFilter](js-apis-bluetooth-ble.md#scanfilter)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 类型 | å¯è¯» | å¯å†™ | 说明 | | ---------------------------------------- | ----------- | ---- | ---- | ------------------------------------------------------------ | | deviceId | string | 是 | 是 | 表示过滤的BLE设备地å€ï¼Œä¾‹å¦‚:"XX:XX:XX:XX:XX:XX"。 | | name | string | 是 | 是 | 表示过滤的BLE设备å。 | | serviceUuid | string | 是 | 是 | 表示过滤包å«è¯¥UUIDæœåŠ¡çš„è®¾å¤‡ï¼Œä¾‹å¦‚ï¼š00001888-0000-1000-8000-00805f9b34fb。 | | serviceUuidMask | string | 是 | 是 | 表示过滤包å«è¯¥UUIDæœåŠ¡æŽ©ç 的设备,例如:FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF。 | | serviceSolicitationUuid | string | 是 | 是 | 表示过滤包å«è¯¥UUIDæœåŠ¡è¯·æ±‚çš„è®¾å¤‡ï¼Œä¾‹å¦‚ï¼š00001888-0000-1000-8000-00805F9B34FB。 | | serviceSolicitationUuidMask | string | 是 | 是 | 表示过滤包å«è¯¥UUIDæœåŠ¡è¯·æ±‚æŽ©ç 的设备,例如:FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF。 | | serviceData | ArrayBuffer | 是 | 是 | 表示过滤包å«è¯¥æœåŠ¡ç›¸å…³æ•°æ®çš„设备,例如:[0x90,0x00,0xF1,0xF2]。 | | serviceDataMask | ArrayBuffer | 是 | 是 | 表示过滤包å«è¯¥æœåŠ¡ç›¸å…³æ•°æ®æŽ©ç 的设备,例如:[0xFF,0xFF,0xFF,0xFF]。 | | manufactureId | number | 是 | 是 | 表示过滤包å«è¯¥åˆ¶é€ 商ID的设备,例如:0x0006。 | | manufactureData | ArrayBuffer | 是 | 是 | 表示过滤包å«è¯¥åˆ¶é€ 商相关数æ®çš„设备,例如:[0x1F,0x2F,0x3F]。 | | manufactureDataMask | ArrayBuffer | 是 | 是 | 表示过滤包å«è¯¥åˆ¶é€ å•†ç›¸å…³æ•°æ®æŽ©ç 的设备,例如:[0xFF,0xFF,0xFF]。 | ## ScanOptions<sup>(deprecated)</sup> 扫æçš„é…ç½®å‚æ•°ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.ScanOptions](js-apis-bluetooth-ble.md#scanoptions)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 类型 | å¯è¯» | å¯å†™ | 说明 | | --------- | ----------------------- | ---- | ---- | -------------------------------------- | | interval | number | 是 | 是 | 表示扫æç»“果上报延迟时间,默认值为0。 | | dutyMode | [ScanDuty](#scandutydeprecated) | 是 | 是 | è¡¨ç¤ºæ‰«ææ¨¡å¼ï¼Œé»˜è®¤å€¼ä¸ºSCAN_MODE_LOW_POWER。 | | matchMode | [MatchMode](#matchmodedeprecated) | 是 | 是 | è¡¨ç¤ºç¡¬ä»¶çš„è¿‡æ»¤åŒ¹é…æ¨¡å¼ï¼Œé»˜è®¤å€¼ä¸ºMATCH_MODE_AGGRESSIVE。 | ## ScanDuty<sup>(deprecated)</sup> æžšä¸¾ï¼Œæ‰«ææ¨¡å¼ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.ScanDuty](js-apis-bluetooth-ble.md#scanduty)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 值 | 说明 | | --------------------- | ---- | ------------ | | SCAN_MODE_LOW_POWER | 0 | 表示低功耗模å¼ï¼Œé»˜è®¤å€¼ã€‚ | | SCAN_MODE_BALANCED | 1 | 表示å‡è¡¡æ¨¡å¼ã€‚ | | SCAN_MODE_LOW_LATENCY | 2 | 表示低延迟模å¼ã€‚ | ## MatchMode<sup>(deprecated)</sup> æžšä¸¾ï¼Œç¡¬ä»¶è¿‡æ»¤åŒ¹é…æ¨¡å¼ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.MatchMode](js-apis-bluetooth-ble.md#matchmode)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 值 | 说明 | | --------------------- | ---- | ---------------------------------------- | | MATCH_MODE_AGGRESSIVE | 1 | 表示硬件上报扫æç»“果门é™è¾ƒä½Žï¼Œæ¯”如扫æåˆ°çš„功率较低或者一段时间扫æåˆ°çš„æ¬¡æ•°è¾ƒå°‘也触å‘上报,默认值。 | | MATCH_MODE_STICKY | 2 | 表示硬件上报扫æç»“果门é™è¾ƒé«˜ï¼Œæ›´é«˜çš„功率门é™ä»¥åŠæ‰«æåˆ°å¤šæ¬¡æ‰ä¼šä¸ŠæŠ¥ã€‚ | ## ScanResult<sup>(deprecated)</sup> 扫æç»“果上报数æ®ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.ScanResult](js-apis-bluetooth-ble.md#scanresult)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 类型 | å¯è¯» | å¯å†™ | 说明 | | -------- | ----------- | ---- | ---- | ---------------------------------- | | deviceId | string | 是 | å¦ | 表示扫æåˆ°çš„设备地å€ï¼Œä¾‹å¦‚:"XX:XX:XX:XX:XX:XX"。 | | rssi | number | 是 | å¦ | 表示扫æåˆ°çš„设备的rssi值。 | | data | ArrayBuffer | 是 | å¦ | 表示扫æåˆ°çš„设备å‘é€çš„广æ’包。 | ## BluetoothState<sup>(deprecated)</sup> 枚举,è“牙开关状æ€ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[access.BluetoothState](js-apis-bluetooth-access.md#bluetoothstate)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 值 | 说明 | | --------------------- | ---- | ------------------ | | STATE_OFF | 0 | 表示è“牙已关é—。 | | STATE_TURNING_ON | 1 | 表示è“牙æ£åœ¨æ‰“开。 | | STATE_ON | 2 | 表示è“牙已打开。 | | STATE_TURNING_OFF | 3 | 表示è“牙æ£åœ¨å…³é—。 | | STATE_BLE_TURNING_ON | 4 | 表示è“牙æ£åœ¨æ‰“å¼€LE-only模å¼ã€‚ | | STATE_BLE_ON | 5 | 表示è“牙æ£å¤„于LE-only模å¼ã€‚ | | STATE_BLE_TURNING_OFF | 6 | 表示è“牙æ£åœ¨å…³é—LE-only模å¼ã€‚ | ## AdvertiseSetting<sup>(deprecated)</sup> æè¿°è“牙低功耗设备å‘é€å¹¿æ’çš„å‚æ•°ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.AdvertiseSetting](js-apis-bluetooth-ble.md#advertisesetting)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 类型 | å¯è¯» | å¯å†™ | 说明 | | ----------- | ------- | ---- | ---- | ---------------------------------------- | | interval | number | 是 | 是 | 表示广æ’间隔,最å°å€¼è®¾ç½®32个slot表示20ms,最大值设置16384个slot,默认值设置为1600个slot表示1s。 | | txPower | number | 是 | 是 | 表示å‘é€åŠŸçŽ‡ï¼Œæœ€å°å€¼è®¾ç½®-127,最大值设置1,默认值设置-7,å•ä½dbm。 | | connectable | boolean | 是 | 是 | è¡¨ç¤ºæ˜¯å¦æ˜¯å¯è¿žæŽ¥å¹¿æ’,默认值设置为true。 | ## AdvertiseData<sup>(deprecated)</sup> æè¿°BLEå¹¿æ’æ•°æ®åŒ…的内容。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.AdvertiseData](js-apis-bluetooth-ble.md#advertisedata)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 类型 | å¯è¯» | å¯å†™ | 说明 | | --------------- | ---------------------------------------- | ---- | ---- | --------------------------- | | serviceUuids | Array<string> | 是 | 是 | 表示è¦å¹¿æ’çš„æœåŠ¡ UUID 列表。 | | manufactureData | Array<[ManufactureData](#manufacturedatadeprecated)> | 是 | 是 | 表示è¦å¹¿æ’的广æ’çš„åˆ¶é€ å•†ä¿¡æ¯åˆ—表。 | | serviceData | Array<[ServiceData](#servicedatadeprecated)> | 是 | 是 | 表示è¦å¹¿æ’çš„æœåŠ¡æ•°æ®åˆ—表。 | ## ManufactureData<sup>(deprecated)</sup> æè¿°BLEå¹¿æ’æ•°æ®åŒ…的内容。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.ManufactureData](js-apis-bluetooth-ble.md#manufacturedata)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 类型 | å¯è¯» | å¯å†™ | 说明 | | ---------------- | ------------------- | ---- | ---- | ------------------ | | manufactureId | number | 是 | 是 | è¡¨ç¤ºåˆ¶é€ å•†çš„ID,由è“牙SIG分é…。 | | manufactureValue | ArrayBuffer | 是 | 是 | è¡¨ç¤ºåˆ¶é€ å•†å‘é€çš„åˆ¶é€ å•†æ•°æ®ã€‚ | ## ServiceData<sup>(deprecated)</sup> æè¿°å¹¿æ’åŒ…ä¸æœåŠ¡æ•°æ®å†…容。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[ble.ServiceData](js-apis-bluetooth-ble.md#servicedata)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 类型 | å¯è¯» | å¯å†™ | 说明 | | ------------ | ----------- | ---- | ---- | ---------- | | serviceUuid | string | 是 | 是 | 表示æœåŠ¡çš„UUID。 | | serviceValue | ArrayBuffer | 是 | 是 | 表示æœåŠ¡æ•°æ®ã€‚ | ## PinRequiredParam<sup>(deprecated)</sup> æè¿°é…å¯¹è¯·æ±‚å‚æ•°ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.PinRequiredParam](js-apis-bluetooth-connection.md#pinrequiredparam)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 类型 | å¯è¯» | å¯å†™ | 说明 | | -------- | ------ | ---- | ---- | ----------- | | deviceId | string | 是 | å¦ | 表示è¦é…对的设备ID。 | | pinCode | string | 是 | å¦ | 表示è¦é…对的密钥。 | ## BondStateParam<sup>(deprecated)</sup> æè¿°é…对状æ€å‚数。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.BondStateParam](js-apis-bluetooth-connection.md#bondstateparam)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 类型 | å¯è¯» | å¯å†™ | 说明 | | -------- | ------ | ---- | ---- | ----------- | | deviceId | string | 是 | å¦ | 表示è¦é…对的设备ID。 | | state | BondState | 是 | å¦ | 表示é…对设备的状æ€ã€‚ | ## StateChangeParam<sup>(deprecated)</sup> æè¿°profileçŠ¶æ€æ”¹å˜å‚数。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[baseProfile.StateChangeParam](js-apis-bluetooth-baseProfile.md#statechangeparam)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 类型 | å¯è¯» | å¯å†™ | 说明 | | -------- | ------------------------------------------------- | ---- | ---- | ------------------------------- | | deviceId | string | 是 | å¦ | 表示è“牙设备地å€ã€‚ | | state | [ProfileConnectionState](#profileconnectionstatedeprecated) | 是 | å¦ | 表示è“牙设备的profile连接状æ€ã€‚ | ## DeviceClass<sup>(deprecated)</sup> æè¿°è“牙设备的类别。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[connection.DeviceClass](js-apis-bluetooth-connection.md#deviceclass)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 类型 | å¯è¯» | å¯å†™ | 说明 | | --------------- | ----------------------------------- | ---- | ---- | ---------------- | | majorClass | [MajorClass](#majorclassdeprecated) | 是 | å¦ | 表示è“牙设备主è¦ç±»åˆ«çš„æžšä¸¾ã€‚ | | majorMinorClass | [MajorMinorClass](#majorminorclassdeprecated) | 是 | å¦ | è¡¨ç¤ºä¸»è¦æ¬¡è¦è“牙设备类别的枚举。 | | classOfDevice | number | 是 | å¦ | 表示设备类别。 | ## MajorClass<sup>(deprecated)</sup> 枚举,è“牙设备主è¦ç±»åˆ«ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[constant.MajorClass](js-apis-bluetooth-constant.md#majorclass)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 值 | 说明 | | ------------------- | ------ | ---------- | | MAJOR_MISC | 0x0000 | 表示æ‚项设备。 | | MAJOR_COMPUTER | 0x0100 | 表示计算机设备。 | | MAJOR_PHONE | 0x0200 | 表示手机设备。 | | MAJOR_NETWORKING | 0x0300 | 表示网络设备。 | | MAJOR_AUDIO_VIDEO | 0x0400 | 表示音频和视频设备。 | | MAJOR_PERIPHERAL | 0x0500 | 表示外围设备。 | | MAJOR_IMAGING | 0x0600 | 表示æˆåƒè®¾å¤‡ã€‚ | | MAJOR_WEARABLE | 0x0700 | 表示å¯ç©¿æˆ´è®¾å¤‡ã€‚ | | MAJOR_TOY | 0x0800 | 表示玩具设备。 | | MAJOR_HEALTH | 0x0900 | 表示å¥åº·è®¾å¤‡ã€‚ | | MAJOR_UNCATEGORIZED | 0x1F00 | 表示未分类设备。 | ## MajorMinorClass<sup>(deprecated)</sup> æžšä¸¾ï¼Œä¸»è¦æ¬¡è¦è“牙设备类别。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[constant.MajorMinorClass](js-apis-bluetooth-constant.md#majorminorclass)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 值 | 说明 | | ---------------------------------------- | ------ | --------------- | | COMPUTER_UNCATEGORIZED | 0x0100 | 表示未分类计算机设备。 | | COMPUTER_DESKTOP | 0x0104 | 表示å°å¼è®¡ç®—机设备。 | | COMPUTER_SERVER | 0x0108 | 表示æœåŠ¡å™¨è®¾å¤‡ã€‚ | | COMPUTER_LAPTOP | 0x010C | 表示便æºå¼è®¡ç®—机设备。 | | COMPUTER_HANDHELD_PC_PDA | 0x0110 | 表示手æŒå¼è®¡ç®—机设备。 | | COMPUTER_PALM_SIZE_PC_PDA | 0x0114 | 表示掌上电脑设备。 | | COMPUTER_WEARABLE | 0x0118 | 表示å¯ç©¿æˆ´è®¡ç®—机设备。 | | COMPUTER_TABLET | 0x011C | 表示平æ¿ç”µè„‘设备。 | | PHONE_UNCATEGORIZED | 0x0200 | 表示未分类手机设备。 | | PHONE_CELLULAR | 0x0204 | 表示便æºå¼æ‰‹æœºè®¾å¤‡ã€‚ | | PHONE_CORDLESS | 0x0208 | è¡¨ç¤ºæ— çº¿ç”µè¯è®¾å¤‡ã€‚ | | PHONE_SMART | 0x020C | 表示智能手机设备。 | | PHONE_MODEM_OR_GATEWAY | 0x0210 | 表示调制解调器或网关手机设备。 | | PHONE_ISDN | 0x0214 | 表示ISDN手机设备。 | | NETWORK_FULLY_AVAILABLE | 0x0300 | 表示网络完全å¯ç”¨è®¾å¤‡ã€‚ | | NETWORK_1_TO_17_UTILIZED | 0x0320 | 表示使用网络1到17设备。 | | NETWORK_17_TO_33_UTILIZED | 0x0340 | 表示使用网络17到33设备。 | | NETWORK_33_TO_50_UTILIZED | 0x0360 | 表示使用网络33到50设备。 | | NETWORK_60_TO_67_UTILIZED | 0x0380 | 表示使用网络60到67设备。 | | NETWORK_67_TO_83_UTILIZED | 0x03A0 | 表示使用网络67到83设备。 | | NETWORK_83_TO_99_UTILIZED | 0x03C0 | 表示使用网络83到99设备。 | | NETWORK_NO_SERVICE | 0x03E0 | è¡¨ç¤ºç½‘ç»œæ— æœåŠ¡è®¾å¤‡ã€‚ | | AUDIO_VIDEO_UNCATEGORIZED | 0x0400 | 表示未分类音频视频设备。 | | AUDIO_VIDEO_WEARABLE_HEADSET | 0x0404 | 表示å¯ç©¿æˆ´å¼éŸ³é¢‘视频设备。 | | AUDIO_VIDEO_HANDSFREE | 0x0408 | è¡¨ç¤ºå…æéŸ³é¢‘è§†é¢‘è®¾å¤‡ã€‚ | | AUDIO_VIDEO_MICROPHONE | 0x0410 | 表示麦克风音频视频设备。 | | AUDIO_VIDEO_LOUDSPEAKER | 0x0414 | 表示扬声器音频视频设备。 | | AUDIO_VIDEO_HEADPHONES | 0x0418 | 表示头戴å¼éŸ³é¢‘视频设备。 | | AUDIO_VIDEO_PORTABLE_AUDIO | 0x041C | 表示便æºå¼éŸ³é¢‘视频设备。 | | AUDIO_VIDEO_CAR_AUDIO | 0x0420 | 表示汽车音频视频设备。 | | AUDIO_VIDEO_SET_TOP_BOX | 0x0424 | 表示机顶盒音频视频设备。 | | AUDIO_VIDEO_HIFI_AUDIO | 0x0428 | 表示高ä¿çœŸéŸ³å“设备。 | | AUDIO_VIDEO_VCR | 0x042C | è¡¨ç¤ºå½•åƒæœºéŸ³é¢‘视频设备。 | | AUDIO_VIDEO_VIDEO_CAMERA | 0x0430 | 表示照相机音频视频设备。 | | AUDIO_VIDEO_CAMCORDER | 0x0434 | è¡¨ç¤ºæ‘„åƒæœºéŸ³é¢‘视频设备。 | | AUDIO_VIDEO_VIDEO_MONITOR | 0x0438 | 表示监视器音频视频设备。 | | AUDIO_VIDEO_VIDEO_DISPLAY_AND_LOUDSPEAKER | 0x043C | 表示视频显示器和扬声器设备。 | | AUDIO_VIDEO_VIDEO_CONFERENCING | 0x0440 | 表示音频视频会议设备。 | | AUDIO_VIDEO_VIDEO_GAMING_TOY | 0x0448 | 表示游æˆçŽ©å…·éŸ³é¢‘è§†é¢‘è®¾å¤‡ã€‚ | | PERIPHERAL_NON_KEYBOARD_NON_POINTING | 0x0500 | 表示éžé”®ç›˜éžæŒ‡å‘外围设备。 | | PERIPHERAL_KEYBOARD | 0x0540 | 表示外设键盘设备。 | | PERIPHERAL_POINTING_DEVICE | 0x0580 | 表示定点装置外围设备。 | | PERIPHERAL_KEYBOARD_POINTING | 0x05C0 | 表示键盘指å‘外围设备。 | | PERIPHERAL_UNCATEGORIZED | 0x0500 | 表示未分类外围设备。 | | PERIPHERAL_JOYSTICK | 0x0504 | 表示周边æ“纵æ†è®¾å¤‡ã€‚ | | PERIPHERAL_GAMEPAD | 0x0508 | è¡¨ç¤ºå‘¨è¾¹æ¸¸æˆæ¿è®¾å¤‡ã€‚ | | PERIPHERAL_REMOTE_CONTROL | 0x05C0 | 表示远程控制外围设备。 | | PERIPHERAL_SENSING_DEVICE | 0x0510 | è¡¨ç¤ºå¤–å›´ä¼ æ„Ÿè®¾å¤‡è®¾å¤‡ã€‚ | | PERIPHERAL_DIGITIZER_TABLET | 0x0514 | 表示外围数å—化仪平æ¿ç”µè„‘设备。 | | PERIPHERAL_CARD_READER | 0x0518 | 表示外围读å¡å™¨è®¾å¤‡ã€‚ | | PERIPHERAL_DIGITAL_PEN | 0x051C | 表示外设数ç 笔设备。 | | PERIPHERAL_SCANNER_RFID | 0x0520 | 表示射频识别扫æä»ªå¤–围设备。 | | PERIPHERAL_GESTURAL_INPUT | 0x0522 | 表示手势输入外围设备。 | | IMAGING_UNCATEGORIZED | 0x0600 | 表示未分类的图åƒè®¾å¤‡ã€‚ | | IMAGING_DISPLAY | 0x0610 | è¡¨ç¤ºå›¾åƒæ˜¾ç¤ºè®¾å¤‡ã€‚ | | IMAGING_CAMERA | 0x0620 | 表示æˆåƒç…§ç›¸æœºè®¾å¤‡ã€‚ | | IMAGING_SCANNER | 0x0640 | 表示æˆåƒæ‰«æä»ªè®¾å¤‡ã€‚ | | IMAGING_PRINTER | 0x0680 | 表示æˆåƒæ‰“å°æœºè®¾å¤‡ã€‚ | | WEARABLE_UNCATEGORIZED | 0x0700 | 表示未分类的å¯ç©¿æˆ´è®¾å¤‡ã€‚ | | WEARABLE_WRIST_WATCH | 0x0704 | 表示å¯ç©¿æˆ´è…•表设备。 | | WEARABLE_PAGER | 0x0708 | 表示å¯ç©¿æˆ´å¯»å‘¼æœºè®¾å¤‡ã€‚ | | WEARABLE_JACKET | 0x070C | 表示夹克å¯ç©¿æˆ´è®¾å¤‡ã€‚ | | WEARABLE_HELMET | 0x0710 | 表示å¯ç©¿æˆ´å¤´ç›”设备。 | | WEARABLE_GLASSES | 0x0714 | 表示å¯ç©¿æˆ´çœ¼é•œè®¾å¤‡ã€‚ | | TOY_UNCATEGORIZED | 0x0800 | 表示未分类的玩具设备。 | | TOY_ROBOT | 0x0804 | 表示玩具机器人设备。 | | TOY_VEHICLE | 0x0808 | 表示玩具车设备。 | | TOY_DOLL_ACTION_FIGURE | 0x080C | 表示人形娃娃玩具设备。 | | TOY_CONTROLLER | 0x0810 | 表示玩具控制器设备。 | | TOY_GAME | 0x0814 | 表示玩具游æˆè®¾å¤‡ã€‚ | | HEALTH_UNCATEGORIZED | 0x0900 | 表示未分类å¥åº·è®¾å¤‡ã€‚ | | HEALTH_BLOOD_PRESSURE | 0x0904 | 表示血压å¥åº·è®¾å¤‡ã€‚ | | HEALTH_THERMOMETER | 0x0908 | 表示温度计å¥åº·è®¾å¤‡ã€‚ | | HEALTH_WEIGHING | 0x090C | 表示体é‡å¥åº·è®¾å¤‡ã€‚ | | HEALTH_GLUCOSE | 0x0910 | 表示葡è„ç³–å¥åº·è®¾å¤‡ã€‚ | | HEALTH_PULSE_OXIMETER | 0x0914 | 表示脉æè¡€æ°§ä»ªå¥åº·è®¾å¤‡ã€‚ | | HEALTH_PULSE_RATE | 0x0918 | 表示脉æçއå¥åº·è®¾å¤‡ã€‚ | | HEALTH_DATA_DISPLAY | 0x091C | è¡¨ç¤ºæ•°æ®æ˜¾ç¤ºå¥åº·è®¾å¤‡ã€‚ | | HEALTH_STEP_COUNTER | 0x0920 | 表示阶梯计数器å¥åº·è®¾å¤‡ã€‚ | | HEALTH_BODY_COMPOSITION_ANALYZER | 0x0924 | 表示身体æˆåˆ†åˆ†æžä»ªå¥åº·è®¾å¤‡ã€‚ | | HEALTH_PEAK_FLOW_MONITOR | 0x0928 | 表示湿度计å¥åº·è®¾å¤‡ã€‚ | | HEALTH_MEDICATION_MONITOR | 0x092C | 表示è¯ç‰©ç›‘视仪å¥åº·è®¾å¤‡ã€‚ | | HEALTH_KNEE_PROSTHESIS | 0x0930 | 表示è†ç›–å‡è‚¢å¥åº·è®¾å¤‡ã€‚ | | HEALTH_ANKLE_PROSTHESIS | 0x0934 | 表示脚è¸å‡è‚¢å¥åº·è®¾å¤‡ã€‚ | | HEALTH_GENERIC_HEALTH_MANAGER | 0x0938 | 表示通用å¥åº·ç®¡ç†è®¾å¤‡ã€‚ | | HEALTH_PERSONAL_MOBILITY_DEVICE | 0x093C | 表示个人移动å¥åº·è®¾å¤‡ã€‚ | ## PlayingState<sup>(deprecated)</sup> 枚举,è“牙A2DP æ’æ”¾çжæ€ã€‚ > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[a2dp.PlayingState](js-apis-bluetooth-a2dp.md#playingstate)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 值 | 说明 | | ----------------- | ------ | ------- | | STATE_NOT_PLAYING | 0x0000 | è¡¨ç¤ºæœªæ’æ”¾ã€‚ | | STATE_PLAYING | 0x0001 | 表示æ£åœ¨æ’放。 | ## ProfileId<sup>(deprecated)</sup> è“牙profile枚举,API9新增PROFILE_HID_HOST,PROFILE_PAN_NETWORK。 > **说明:**<br/> > 从API version 9开始支æŒï¼Œä»ŽAPI version 10开始废弃。建议使用[constant.ProfileId](js-apis-bluetooth-constant.md#profileid)替代。 **系统能力**:SystemCapability.Communication.Bluetooth.Core。 | åç§° | 值 | 说明 | | -------------------------------- | ------ | --------------- | | PROFILE_A2DP_SOURCE | 1 | 表示A2DP profile。 | | PROFILE_HANDS_FREE_AUDIO_GATEWAY | 4 | 表示HFP profile。 | | PROFILE_HID_HOST | 6 | 表示HID profile。 | | PROFILE_PAN_NETWORK | 7 | 表示PAN profile。 |