1e41f4b71Sopenharmony_ci# @ohos.bluetooth.a2dp (蓝牙a2dp模块) 2e41f4b71Sopenharmony_ci 3e41f4b71Sopenharmony_cia2dp模块提供了访问蓝牙音频接口的方法。 4e41f4b71Sopenharmony_ci 5e41f4b71Sopenharmony_ci> **说明:** 6e41f4b71Sopenharmony_ci> 7e41f4b71Sopenharmony_ci> 本模块首批接口从API version 10开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8e41f4b71Sopenharmony_ci 9e41f4b71Sopenharmony_ci 10e41f4b71Sopenharmony_ci## 导入模块 11e41f4b71Sopenharmony_ci 12e41f4b71Sopenharmony_ci```js 13e41f4b71Sopenharmony_ciimport { a2dp } from '@kit.ConnectivityKit'; 14e41f4b71Sopenharmony_ci``` 15e41f4b71Sopenharmony_ci 16e41f4b71Sopenharmony_ci## a2dp.createA2dpSrcProfile 17e41f4b71Sopenharmony_ci 18e41f4b71Sopenharmony_cicreateA2dpSrcProfile(): A2dpSourceProfile 19e41f4b71Sopenharmony_ci 20e41f4b71Sopenharmony_ci创建a2dp profile实例。 21e41f4b71Sopenharmony_ci 22e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.Bluetooth.Core。 23e41f4b71Sopenharmony_ci 24e41f4b71Sopenharmony_ci**返回值:** 25e41f4b71Sopenharmony_ci 26e41f4b71Sopenharmony_ci| 类型 | 说明 | 27e41f4b71Sopenharmony_ci| ----------------------------- | ---------- | 28e41f4b71Sopenharmony_ci| [A2dpSourceProfile](#a2dpsourceprofile) | 返回该profile的实例。 | 29e41f4b71Sopenharmony_ci 30e41f4b71Sopenharmony_ci**错误码**: 31e41f4b71Sopenharmony_ci 32e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[蓝牙服务子系统错误码](errorcode-bluetoothManager.md)。 33e41f4b71Sopenharmony_ci 34e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 35e41f4b71Sopenharmony_ci| -------- | ---------------------------- | 36e41f4b71Sopenharmony_ci|401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | 37e41f4b71Sopenharmony_ci|801 | Capability not supported. | 38e41f4b71Sopenharmony_ci 39e41f4b71Sopenharmony_ci 40e41f4b71Sopenharmony_ci**示例:** 41e41f4b71Sopenharmony_ci 42e41f4b71Sopenharmony_ci```js 43e41f4b71Sopenharmony_ciimport { AsyncCallback, BusinessError } from '@kit.BasicServicesKit'; 44e41f4b71Sopenharmony_citry { 45e41f4b71Sopenharmony_ci let a2dpProfile = a2dp.createA2dpSrcProfile(); 46e41f4b71Sopenharmony_ci console.info('a2dp success'); 47e41f4b71Sopenharmony_ci} catch (err) { 48e41f4b71Sopenharmony_ci console.error('errCode: ' + (err as BusinessError).code + ', errMessage: ' + (err as BusinessError).message); 49e41f4b71Sopenharmony_ci} 50e41f4b71Sopenharmony_ci``` 51e41f4b71Sopenharmony_ci 52e41f4b71Sopenharmony_ci 53e41f4b71Sopenharmony_ci## A2dpSourceProfile 54e41f4b71Sopenharmony_ci 55e41f4b71Sopenharmony_ci使用A2dpSourceProfile方法之前需要创建该类的实例进行操作,通过createA2dpSrcProfile()方法构造此实例。 56e41f4b71Sopenharmony_ci 57e41f4b71Sopenharmony_ci 58e41f4b71Sopenharmony_ci### getPlayingState 59e41f4b71Sopenharmony_ci 60e41f4b71Sopenharmony_cigetPlayingState(deviceId: string): PlayingState 61e41f4b71Sopenharmony_ci 62e41f4b71Sopenharmony_ci获取设备的播放状态。 63e41f4b71Sopenharmony_ci 64e41f4b71Sopenharmony_ci**需要权限**:ohos.permission.ACCESS_BLUETOOTH 65e41f4b71Sopenharmony_ci 66e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.Bluetooth.Core。 67e41f4b71Sopenharmony_ci 68e41f4b71Sopenharmony_ci**参数:** 69e41f4b71Sopenharmony_ci 70e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 71e41f4b71Sopenharmony_ci| ------ | ------ | ---- | ------- | 72e41f4b71Sopenharmony_ci| deviceId | string | 是 | 远端设备地址。 | 73e41f4b71Sopenharmony_ci 74e41f4b71Sopenharmony_ci**返回值:** 75e41f4b71Sopenharmony_ci 76e41f4b71Sopenharmony_ci| 类型 | 说明 | 77e41f4b71Sopenharmony_ci| ----------------------------- | ---------- | 78e41f4b71Sopenharmony_ci| [PlayingState](#playingstate) | 远端设备的播放状态。 | 79e41f4b71Sopenharmony_ci 80e41f4b71Sopenharmony_ci**错误码**: 81e41f4b71Sopenharmony_ci 82e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[蓝牙服务子系统错误码](errorcode-bluetoothManager.md)。 83e41f4b71Sopenharmony_ci 84e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 85e41f4b71Sopenharmony_ci| -------- | ---------------------------- | 86e41f4b71Sopenharmony_ci|201 | Permission denied. | 87e41f4b71Sopenharmony_ci|401 | Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. | 88e41f4b71Sopenharmony_ci|801 | Capability not supported. | 89e41f4b71Sopenharmony_ci|2900001 | Service stopped. | 90e41f4b71Sopenharmony_ci|2900003 | Bluetooth disabled. | 91e41f4b71Sopenharmony_ci|2900004 | Profile not supported. | 92e41f4b71Sopenharmony_ci|2900099 | Operation failed. | 93e41f4b71Sopenharmony_ci 94e41f4b71Sopenharmony_ci**示例:** 95e41f4b71Sopenharmony_ci 96e41f4b71Sopenharmony_ci```js 97e41f4b71Sopenharmony_ciimport { AsyncCallback, BusinessError } from '@kit.BasicServicesKit'; 98e41f4b71Sopenharmony_citry { 99e41f4b71Sopenharmony_ci let a2dpSrc = a2dp.createA2dpSrcProfile(); 100e41f4b71Sopenharmony_ci let state = a2dpSrc.getPlayingState('XX:XX:XX:XX:XX:XX'); 101e41f4b71Sopenharmony_ci} catch (err) { 102e41f4b71Sopenharmony_ci console.error('errCode: ' + (err as BusinessError).code + ', errMessage: ' + (err as BusinessError).message); 103e41f4b71Sopenharmony_ci} 104e41f4b71Sopenharmony_ci``` 105e41f4b71Sopenharmony_ci 106e41f4b71Sopenharmony_ci 107e41f4b71Sopenharmony_ci## PlayingState 108e41f4b71Sopenharmony_ci 109e41f4b71Sopenharmony_ci枚举,蓝牙A2DP 播放状态。 110e41f4b71Sopenharmony_ci 111e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.Bluetooth.Core。 112e41f4b71Sopenharmony_ci 113e41f4b71Sopenharmony_ci| 名称 | 值 | 说明 | 114e41f4b71Sopenharmony_ci| ----------------- | ------ | ------- | 115e41f4b71Sopenharmony_ci| STATE_NOT_PLAYING | 0x0000 | 表示未播放。 | 116e41f4b71Sopenharmony_ci| STATE_PLAYING | 0x0001 | 表示正在播放。 | 117e41f4b71Sopenharmony_ci 118e41f4b71Sopenharmony_ci 119e41f4b71Sopenharmony_ci## CodecInfo<sup>11+</sup> 120e41f4b71Sopenharmony_ci 121e41f4b71Sopenharmony_ci编码器信息。 122e41f4b71Sopenharmony_ci 123e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.Bluetooth.Core。 124e41f4b71Sopenharmony_ci 125e41f4b71Sopenharmony_ci| 名称 | 类型 | 可读 | 可写 | 说明 | 126e41f4b71Sopenharmony_ci| ------------------- | ----------------------- | ---- | ---- | -------------------------------------- | 127e41f4b71Sopenharmony_ci| codecType<sup>11+</sup> | [CodecType](#codectype11) | 是 | 是 | 表示编码器类型,默认值为CODEC_TYPE_SBC。 | 128e41f4b71Sopenharmony_ci| codecBitsPerSample<sup>11+</sup> | [CodecBitsPerSample](#codecbitspersample11) | 是 | 是 | 表示每个采样点的位数,默认值为SCAN_MODE_LOW_POWER。 | 129e41f4b71Sopenharmony_ci| codecChannelMode<sup>11+</sup> | [CodecChannelMode](#codecchannelmode11) | 是 | 是 | 表示编码器的声道模式,默认值为CODEC_CHANNEL_MODE_NONE。 | 130e41f4b71Sopenharmony_ci| codecSampleRate<sup>11+</sup> | [CodecSampleRate](#codecsamplerate11) | 是 | 是 | 表示编码器的采样率,默认值为CODEC_BITS_PER_SAMPLE_NONE。 | 131e41f4b71Sopenharmony_ci 132e41f4b71Sopenharmony_ci 133e41f4b71Sopenharmony_ci## CodecType<sup>11+</sup> 134e41f4b71Sopenharmony_ci 135e41f4b71Sopenharmony_ci枚举,蓝牙编码器类型。 136e41f4b71Sopenharmony_ci 137e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.Bluetooth.Core。 138e41f4b71Sopenharmony_ci 139e41f4b71Sopenharmony_ci| 名称 | 值 | 说明 | 140e41f4b71Sopenharmony_ci| ----------------- | ------ | ------- | 141e41f4b71Sopenharmony_ci| CODEC_TYPE_INVALID<sup>11+</sup> | -1 | 未知编码类型。 | 142e41f4b71Sopenharmony_ci| CODEC_TYPE_SBC<sup>11+</sup> | 0 | SBC。 | 143e41f4b71Sopenharmony_ci| CODEC_TYPE_AAC<sup>11+</sup> | 1 | AAC。 | 144e41f4b71Sopenharmony_ci| CODEC_TYPE_L2HC<sup>11+</sup> | 2 | L2HC。| 145e41f4b71Sopenharmony_ci| CODEC_TYPE_L2HCST<sup>13+</sup> | 3 | L2HCST。 | 146e41f4b71Sopenharmony_ci| CODEC_TYPE_LDAC<sup>13+</sup> | 4 | LDAC。| 147e41f4b71Sopenharmony_ci 148e41f4b71Sopenharmony_ci 149e41f4b71Sopenharmony_ci## CodecChannelMode<sup>11+</sup> 150e41f4b71Sopenharmony_ci 151e41f4b71Sopenharmony_ci枚举,蓝牙编码器的声道模式。 152e41f4b71Sopenharmony_ci 153e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.Bluetooth.Core。 154e41f4b71Sopenharmony_ci 155e41f4b71Sopenharmony_ci| 名称 | 值 | 说明 | 156e41f4b71Sopenharmony_ci| ----------------- | ------ | ------- | 157e41f4b71Sopenharmony_ci| CODEC_CHANNEL_MODE_NONE<sup>11+</sup> | 0 | 未知声道。| 158e41f4b71Sopenharmony_ci| CODEC_CHANNEL_MODE_MONO<sup>11+</sup> | 1 | 单声道。 | 159e41f4b71Sopenharmony_ci| CODEC_CHANNEL_MODE_STEREO<sup>11+</sup> | 2 | 双声道。 | 160e41f4b71Sopenharmony_ci 161e41f4b71Sopenharmony_ci 162e41f4b71Sopenharmony_ci## CodecBitsPerSample<sup>11+</sup> 163e41f4b71Sopenharmony_ci 164e41f4b71Sopenharmony_ci枚举,蓝牙编码器每个采样点的位数。 165e41f4b71Sopenharmony_ci 166e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.Bluetooth.Core。 167e41f4b71Sopenharmony_ci 168e41f4b71Sopenharmony_ci| 名称 | 值 | 说明 | 169e41f4b71Sopenharmony_ci| ----------------- | ------ | ------- | 170e41f4b71Sopenharmony_ci| CODEC_BITS_PER_SAMPLE_NONE<sup>11+</sup> | 0 | 未知采样点的位数。| 171e41f4b71Sopenharmony_ci| CODEC_BITS_PER_SAMPLE_16<sup>11+</sup> | 1 | 16位采样点的位数。| 172e41f4b71Sopenharmony_ci| CODEC_BITS_PER_SAMPLE_24<sup>11+</sup> | 2 | 24位采样点的位数。| 173e41f4b71Sopenharmony_ci| CODEC_BITS_PER_SAMPLE_32<sup>11+</sup> | 3 | 32位采样点的位数。| 174e41f4b71Sopenharmony_ci 175e41f4b71Sopenharmony_ci 176e41f4b71Sopenharmony_ci## CodecSampleRate<sup>11+</sup> 177e41f4b71Sopenharmony_ci 178e41f4b71Sopenharmony_ci枚举,蓝牙编码器的采样率。 179e41f4b71Sopenharmony_ci 180e41f4b71Sopenharmony_ci**系统能力**:SystemCapability.Communication.Bluetooth.Core。 181e41f4b71Sopenharmony_ci 182e41f4b71Sopenharmony_ci| 名称 | 值 | 说明 | 183e41f4b71Sopenharmony_ci| ----------------- | ------ | ------- | 184e41f4b71Sopenharmony_ci| CODEC_SAMPLE_RATE_NONE<sup>11+</sup> | 0 | 未知采样率。| 185e41f4b71Sopenharmony_ci| CODEC_SAMPLE_RATE_44100<sup>11+</sup> | 1 | 44.1k采样率。| 186e41f4b71Sopenharmony_ci| CODEC_SAMPLE_RATE_48000<sup>11+</sup> | 2 | 48k采样率。| 187e41f4b71Sopenharmony_ci| CODEC_SAMPLE_RATE_88200<sup>11+</sup> | 3 | 88.2k采样率。| 188e41f4b71Sopenharmony_ci| CODEC_SAMPLE_RATE_96000<sup>11+</sup> | 4 | 96k位采样率。| 189e41f4b71Sopenharmony_ci| CODEC_SAMPLE_RATE_176400<sup>11+</sup> | 5 | 176.4k位采样率。| 190e41f4b71Sopenharmony_ci| CODEC_SAMPLE_RATE_192000<sup>11+</sup> | 6 | 192k位采样率。|