1# Interface (AudioVolumeManager) 2<!--Kit: Audio Kit--> 3<!--Subsystem: Multimedia--> 4<!--Owner: @songshenke--> 5<!--Designer: @caixuejiang; @hao-liangfei; @zhanganxiang--> 6<!--Tester: @Filger--> 7<!--Adviser: @zengyawen--> 8 9> **说明:** 10> 11> - 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 12> - 本Interface首批接口从API version 9开始支持。 13 14音量管理。 15 16在使用AudioVolumeManager的接口之前,需先通过[getVolumeManager](arkts-apis-audio-AudioManager.md#getvolumemanager9)获取AudioVolumeManager实例。 17 18## 导入模块 19 20```ts 21import { audio } from '@kit.AudioKit'; 22``` 23 24## getVolumeGroupManager<sup>9+</sup> 25 26getVolumeGroupManager(groupId: number, callback: AsyncCallback<AudioVolumeGroupManager\>\): void 27 28获取音频组音量管理器实例。使用callback异步回调。 29 30**系统能力:** SystemCapability.Multimedia.Audio.Volume 31 32**参数:** 33 34| 参数名 | 类型 | 必填 | 说明 | 35| ---------- | ------------------------------------------------------------ | ---- |-----------------------------------------------------------| 36| groupId | number | 是 | 音量组id,默认使用DEFAULT_VOLUME_GROUP_ID。 | 37| callback | AsyncCallback<[AudioVolumeGroupManager](arkts-apis-audio-AudioVolumeGroupManager.md)> | 是 | 回调函数。当获取音频组音量管理器实例成功,err为undefined,data为获取到的音频组音量管理器实例;否则为错误对象。 | 38 39**示例:** 40 41```ts 42import { BusinessError } from '@kit.BasicServicesKit'; 43 44let groupId: number = audio.DEFAULT_VOLUME_GROUP_ID; 45 46audioVolumeManager.getVolumeGroupManager(groupId, (err: BusinessError, value: audio.AudioVolumeGroupManager) => { 47 if (err) { 48 console.error(`Failed to getVolumeGroupManager. Code: ${err.code}, message: ${err.message}`); 49 return; 50 } 51 console.info('Succeeded in doing getVolumeGroupManager.'); 52}); 53 54``` 55 56## getVolumeGroupManager<sup>9+</sup> 57 58getVolumeGroupManager(groupId: number\): Promise<AudioVolumeGroupManager\> 59 60获取音频组音量管理器实例。使用Promise异步回调。 61 62**系统能力:** SystemCapability.Multimedia.Audio.Volume 63 64**参数:** 65 66| 参数名 | 类型 | 必填 | 说明 | 67| ---------- | ---------------------------------------- | ---- |----------------------------------| 68| groupId | number | 是 | 音量组id,默认使用DEFAULT_VOLUME_GROUP_ID。| 69 70**返回值:** 71 72| 类型 | 说明 | 73| ------------------- | ----------------------------- | 74| Promise< [AudioVolumeGroupManager](arkts-apis-audio-AudioVolumeGroupManager.md) > | Promise对象,返回音频组音量管理器实例。 | 75 76**示例:** 77 78```ts 79import { audio } from '@kit.AudioKit'; 80import { BusinessError } from '@kit.BasicServicesKit'; 81 82let groupId: number = audio.DEFAULT_VOLUME_GROUP_ID; 83 84audioVolumeManager.getVolumeGroupManager(groupId).then((audioVolumeGroupManager: audio.AudioVolumeGroupManager) => { 85 console.info('Succeeded in doing getVolumeGroupManager.'); 86}).catch((err: BusinessError) => { 87 console.error(`Failed to getVolumeGroupManager. Code: ${err.code}, message: ${err.message}`); 88}); 89``` 90 91## getVolumeGroupManagerSync<sup>10+</sup> 92 93getVolumeGroupManagerSync(groupId: number\): AudioVolumeGroupManager 94 95获取音频组音量管理器实例。同步返回结果。 96 97**系统能力:** SystemCapability.Multimedia.Audio.Volume 98 99**参数:** 100 101| 参数名 | 类型 | 必填 | 说明 | 102| ---------- | ---------------------------------------- | ---- |----------------------------------| 103| groupId | number | 是 | 音量组id,默认使用DEFAULT_VOLUME_GROUP_ID。| 104 105**返回值:** 106 107| 类型 | 说明 | 108| ------------------- | ----------------------------- | 109| [AudioVolumeGroupManager](arkts-apis-audio-AudioVolumeGroupManager.md) | 音频组音量管理器实例。 | 110 111**错误码:** 112 113以下错误码的详细介绍请参见[通用错误码说明文档](../errorcode-universal.md)和[Audio错误码](errorcode-audio.md)。 114 115| 错误码ID | 错误信息 | 116| ------- | --------------------------------------------| 117| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. | 118| 6800101 | Parameter verification failed. | 119 120**示例:** 121 122```ts 123import { BusinessError } from '@kit.BasicServicesKit'; 124 125try { 126 let audioVolumeGroupManager: audio.AudioVolumeGroupManager = audioVolumeManager.getVolumeGroupManagerSync(audio.DEFAULT_VOLUME_GROUP_ID); 127 console.info(`Get audioVolumeGroupManager success.`); 128} catch (err) { 129 let error = err as BusinessError; 130 console.error(`Failed to get audioVolumeGroupManager, error: ${error}`); 131} 132``` 133 134## getAppVolumePercentage<sup>19+</sup> 135 136getAppVolumePercentage(): Promise<number\> 137 138获取应用的音量(范围为0到100)。使用Promise异步回调。 139 140**系统能力:** SystemCapability.Multimedia.Audio.Volume 141 142**返回值:** 143 144| 类型 | 说明 | 145| ------------------- |--------------------| 146| Promise<number> | Promise对象,返回应用的音量。 | 147 148**示例:** 149 150```ts 151import { audio } from '@kit.AudioKit'; 152 153audioVolumeManager.getAppVolumePercentage().then((value: number) => { 154 console.info(`app volume is ${value}.`); 155}); 156``` 157 158## setAppVolumePercentage<sup>19+</sup> 159 160setAppVolumePercentage(volume: number\): Promise<void\> 161 162设置应用的音量(范围为0到100)。使用Promise异步回调。 163 164**系统能力:** SystemCapability.Multimedia.Audio.Volume 165 166**参数:** 167 168| 参数名 | 类型 | 必填 | 说明 | 169| ---------- | ---------------------------------------- | ---- |----------| 170| volume | number | 是 | 要设置的音量值。 | 171 172**返回值:** 173 174| 类型 | 说明 | 175| ------------------- | ------------------------------- | 176| Promise<void> | Promise对象。无返回结果的Promise对象。 | 177 178**错误码:** 179 180以下错误码的详细介绍请参见[Audio错误码](errorcode-audio.md)。 181 182| 错误码ID | 错误信息 | 183| ------- | --------------------------------------------| 184| 6800101 | Parameter verification failed.| 185| 6800301 | Crash or blocking occurs in system process. | 186 187**示例:** 188 189```ts 190import { audio } from '@kit.AudioKit'; 191 192audioVolumeManager.setAppVolumePercentage(20).then(() => { 193 console.info(`set app volume success.`); 194}); 195``` 196 197## on('volumeChange')<sup>(deprecated)</sup> 198 199on(type: 'volumeChange', callback: Callback\<VolumeEvent>): void 200 201监听系统音量变化事件(当系统音量发生变化时触发)。使用callback异步回调。 202 203> **说明:** 204> 从API version 12开始支持,从API version 20开始废弃,建议使用[on('streamVolumeChange')](arkts-apis-audio-AudioVolumeManager.md#onstreamvolumechange20)替代。 205 206**系统能力:** SystemCapability.Multimedia.Audio.Volume 207 208**参数:** 209 210| 参数名 | 类型 | 必填 | 说明 | 211| -------- | -------------------------------------- | ---- | ------------------------------------------------------------ | 212| type | string | 是 | 事件回调类型,支持的事件为'volumeChange',当系统音量发生变化时,触发该事件。 | 213| callback | Callback<[VolumeEvent](arkts-apis-audio-i.md#volumeevent9)> | 是 | 回调函数,返回变化后的音量信息。 | 214 215**错误码:** 216 217以下错误码的详细介绍请参见[通用错误码说明文档](../errorcode-universal.md)和[Audio错误码](errorcode-audio.md)。 218 219| 错误码ID | 错误信息 | 220| ------- | --------------------------------------------| 221| 401 | Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. | 222| 6800101 | Parameter verification failed. | 223 224**示例:** 225 226```ts 227audioVolumeManager.on('volumeChange', (volumeEvent: audio.VolumeEvent) => { 228 console.info(`VolumeType of stream: ${volumeEvent.volumeType} `); 229 console.info(`Volume level: ${volumeEvent.volume} `); 230 console.info(`Whether to updateUI: ${volumeEvent.updateUi} `); 231}); 232``` 233 234## off('volumeChange')<sup>(deprecated)</sup> 235 236off(type: 'volumeChange', callback?: Callback\<VolumeEvent>): void 237 238取消监听系统音量变化事件。使用callback异步回调。 239 240> **说明:** 241> 从API version 12开始支持,从API version 20开始废弃,建议使用[off('streamVolumeChange')](arkts-apis-audio-AudioVolumeManager.md#offstreamvolumechange20)替代。 242 243**系统能力:** SystemCapability.Multimedia.Audio.Volume 244 245**参数:** 246 247| 参数名 | 类型 | 必填 | 说明 | 248| -------- | -------------------------------------- | ---- | ------------------------------------------------------------ | 249| type | string | 是 | 事件回调类型,支持的事件为'volumeChange',当取消监听系统音量变化事件时,触发该事件。 | 250| callback | Callback<[VolumeEvent](arkts-apis-audio-i.md#volumeevent9)> | 否 | 回调函数,返回变化后的音量信息。 | 251 252**错误码:** 253 254以下错误码的详细介绍请参见[通用错误码说明文档](../errorcode-universal.md)和[Audio错误码](errorcode-audio.md)。 255 256| 错误码ID | 错误信息 | 257| ------- | --------------------------------------------| 258| 401 | Parameter error. Possible causes: 1.Mandatory parameters missing; 2.Incorrect parameter types. | 259| 6800101 | Parameter verification failed. | 260 261**示例:** 262 263```ts 264// 取消该事件的所有监听。 265audioVolumeManager.off('volumeChange'); 266 267// 同一监听事件中,on方法和off方法传入callback参数一致,off方法取消对应on方法订阅的监听。 268let volumeChangeCallback = (volumeEvent: audio.VolumeEvent) => { 269 console.info(`VolumeType of stream: ${volumeEvent.volumeType} `); 270 console.info(`Volume level: ${volumeEvent.volume} `); 271 console.info(`Whether to updateUI: ${volumeEvent.updateUi} `); 272}; 273 274audioVolumeManager.on('volumeChange', volumeChangeCallback); 275 276audioVolumeManager.off('volumeChange', volumeChangeCallback); 277``` 278 279## on('appVolumeChange')<sup>19+</sup> 280 281on(type: 'appVolumeChange', callback: Callback\<VolumeEvent>): void 282 283监听当前应用应用级音量变化事件(当应用级音量发生变化时触发)。使用callback异步回调。 284 285**系统能力:** SystemCapability.Multimedia.Audio.Volume 286 287**参数:** 288 289| 参数名 | 类型 | 必填 | 说明 | 290| -------- | -------------------------------------- | ---- | ------------------------------------------------------------ | 291| type | string | 是 | 事件回调类型,支持的事件为'appVolumeChange',当应用级音量发生变化时,触发该事件。 | 292| callback | Callback<[VolumeEvent](arkts-apis-audio-i.md#volumeevent9)> | 是 | 回调函数,返回变化后的音量信息。 | 293 294**错误码:** 295 296以下错误码的详细介绍请参见[Audio错误码](errorcode-audio.md)。 297 298| 错误码ID | 错误信息 | 299| ------- | --------------------------------------------| 300| 6800101 | Parameter verification failed. | 301 302**示例:** 303 304```ts 305audioVolumeManager.on('appVolumeChange', (volumeEvent: audio.VolumeEvent) => { 306 console.info(`VolumeType of stream: ${volumeEvent.volumeType} `); 307 console.info(`Volume level: ${volumeEvent.volume} `); 308 console.info(`Whether to updateUI: ${volumeEvent.updateUi} `); 309}); 310``` 311 312## off('appVolumeChange')<sup>19+</sup> 313 314off(type: 'appVolumeChange', callback?: Callback\<VolumeEvent>): void 315 316取消监听当前应用应用级音量变化事件。使用callback异步回调。 317 318**系统能力:** SystemCapability.Multimedia.Audio.Volume 319 320**参数:** 321 322| 参数名 | 类型 | 必填 | 说明 | 323| -------- | -------------------------------------- | ---- | ------------------------------------------------------------ | 324| type | string | 是 | 事件回调类型,支持的事件为'appVolumeChange',当取消监听当前应用应用级音量变化事件时,触发该事件。 | 325| callback | Callback<[VolumeEvent](arkts-apis-audio-i.md#volumeevent9)> | 否 | 回调函数,返回变化后的音量信息。 | 326 327**错误码:** 328 329以下错误码的详细介绍请参见[Audio错误码](errorcode-audio.md)。 330 331| 错误码ID | 错误信息 | 332| ------- | --------------------------------------------| 333| 6800101 | Parameter verification failed. | 334 335**示例:** 336 337```ts 338// 取消该事件的所有监听。 339audioVolumeManager.off('appVolumeChange'); 340 341// 同一监听事件中,on方法和off方法传入callback参数一致,off方法取消对应on方法订阅的监听。 342let appVolumeChangeCallback = (volumeEvent: audio.VolumeEvent) => { 343 console.info(`VolumeType of stream: ${volumeEvent.volumeType} `); 344 console.info(`Volume level: ${volumeEvent.volume} `); 345 console.info(`Whether to updateUI: ${volumeEvent.updateUi} `); 346}; 347 348audioVolumeManager.on('appVolumeChange', appVolumeChangeCallback); 349 350audioVolumeManager.off('appVolumeChange', appVolumeChangeCallback); 351``` 352 353## getVolumeByStream<sup>20+</sup> 354 355getVolumeByStream(streamUsage: StreamUsage): number 356 357获取指定音频流的音量。 358 359**系统能力:** SystemCapability.Multimedia.Audio.Volume 360 361**参数:** 362 363| 参数名 | 类型 | 必填 | 说明 | 364| -------- | -------------------------------------- | ---- | ------------------------------------------------------------ | 365| streamUsage | [StreamUsage](arkts-apis-audio-e.md#streamusage) | 是 | 需要获取音量值的音频流。 | 366 367**返回值:** 368 369| 类型 | 说明 | 370| ------------------- | ----------------------------- | 371| number | 音量值。 | 372 373**错误码:** 374 375以下错误码的详细介绍请参见[Audio错误码](errorcode-audio.md)。 376 377| 错误码ID | 错误信息 | 378| ------- | --------------------------------------------| 379| 6800101 | Parameter verification failed. | 380 381**示例:** 382 383```ts 384// 获取指定音频流的音量值。 385import { BusinessError } from '@kit.BasicServicesKit'; 386import { audio } from '@kit.AudioKit' 387 388try { 389 let volume : number = audio.getAudioManager().getVolumeManager().getVolumeByStream(audio.StreamUsage.STREAM_USAGE_MUSIC); 390 console.info(`Obtains the volume of a stream success.`); 391} catch (err) { 392 let error = err as BusinessError; 393 console.error(`Failed to obtains the volume of a stream, error: ${error}`); 394} 395``` 396 397## getMinVolumeByStream<sup>20+</sup> 398 399getMinVolumeByStream(streamUsage: StreamUsage): number 400 401获取指定音频流的最小音量。 402 403**系统能力:** SystemCapability.Multimedia.Audio.Volume 404 405**参数:** 406 407| 参数名 | 类型 | 必填 | 说明 | 408| -------- | -------------------------------------- | ---- | ------------------------------------------------------------ | 409| streamUsage | [StreamUsage](arkts-apis-audio-e.md#streamusage) | 是 | 需要获取的最小音量值的音频流。 | 410 411**返回值:** 412 413| 类型 | 说明 | 414| ------------------- | ----------------------------- | 415| number | 音量值。 | 416 417**错误码:** 418 419以下错误码的详细介绍请参见[Audio错误码](errorcode-audio.md)。 420 421| 错误码ID | 错误信息 | 422| ------- | --------------------------------------------| 423| 6800101 | Parameter verification failed. | 424 425**示例:** 426 427```ts 428// 获取指定音频流的最小音量。 429import { BusinessError } from '@kit.BasicServicesKit'; 430import { audio } from '@kit.AudioKit' 431 432try { 433 let volume : number = audio.getAudioManager().getVolumeManager().getMinVolumeByStream(audio.StreamUsage.STREAM_USAGE_MUSIC); 434 console.info(`Obtains the minimum volume allowed for a stream success.`); 435} catch (err) { 436 let error = err as BusinessError; 437 console.error(`Failed to obtains the minimum volume allowed for a stream, error: ${error}`); 438} 439``` 440 441## getMaxVolumeByStream<sup>20+</sup> 442 443getMaxVolumeByStream(streamUsage: StreamUsage): number 444 445获取指定音频流的最大音量。 446 447**系统能力:** SystemCapability.Multimedia.Audio.Volume 448 449**参数:** 450 451| 参数名 | 类型 | 必填 | 说明 | 452| -------- | -------------------------------------- | ---- | ------------------------------------------------------------ | 453| streamUsage | [StreamUsage](arkts-apis-audio-e.md#streamusage) | 是 | 需要获取的最大音量值的音频流。 | 454 455**返回值:** 456 457| 类型 | 说明 | 458| ------------------- | ----------------------------- | 459| number | 音量值。 | 460 461**错误码:** 462 463以下错误码的详细介绍请参见[Audio错误码](errorcode-audio.md)。 464 465| 错误码ID | 错误信息 | 466| ------- | --------------------------------------------| 467| 6800101 | Parameter verification failed. | 468 469**示例:** 470 471```ts 472// 获取指定音频流的最大音量。 473import { BusinessError } from '@kit.BasicServicesKit'; 474import { audio } from '@kit.AudioKit' 475 476try { 477 let volume : number = audio.getAudioManager().getVolumeManager().getMaxVolumeByStream(audio.StreamUsage.STREAM_USAGE_MUSIC); 478 console.info(`Obtains the maximum volume allowed for a stream success.`); 479} catch (err) { 480 let error = err as BusinessError; 481 console.error(`Failed to obtains the maximum volume allowed for a stream, error: ${error}`); 482} 483``` 484 485## isSystemMutedForStream<sup>20+</sup> 486 487isSystemMutedForStream(streamUsage: StreamUsage): boolean 488 489检查指定音频流是否静音。 490 491**系统能力:** SystemCapability.Multimedia.Audio.Volume 492 493**参数:** 494 495| 参数名 | 类型 | 必填 | 说明 | 496| -------- | -------------------------------------- | ---- | ------------------------------------------------------------ | 497| streamUsage | [StreamUsage](arkts-apis-audio-e.md#streamusage) | 是 | 检查是否为静音的音频流。 | 498 499**返回值:** 500 501| 类型 | 说明 | 502| ------------------- | ----------------------------- | 503| boolean | 音频流是否为静音状态,true表示音频流已静音,false表示音频流未静音。 | 504 505**错误码:** 506 507以下错误码的详细介绍请参见[Audio错误码](errorcode-audio.md)。 508 509| 错误码ID | 错误信息 | 510| ------- | --------------------------------------------| 511| 6800101 | Parameter verification failed. | 512 513**示例:** 514 515```ts 516// 检查指定音频流是否静音。 517import { BusinessError } from '@kit.BasicServicesKit'; 518import { audio } from '@kit.AudioKit' 519 520try { 521 let isMuted : boolean = audio.getAudioManager().getVolumeManager().isSystemMutedForStream(audio.StreamUsage.STREAM_USAGE_MUSIC); 522 console.info(`Checks whether the system is muted based on the stream success.`); 523} catch (err) { 524 let error = err as BusinessError; 525 console.error(`Failed to checks whether the system is muted based on the stream, error: ${error}`); 526} 527 528``` 529## getVolumeInUnitOfDbByStream<sup>20+</sup> 530 531getVolumeInUnitOfDbByStream(streamUsage: StreamUsage, volumeLevel: number, device: DeviceType): number 532 533获取系统通过音频流、音量等级和设备类型计算出的音量db值。 534 535**系统能力:** SystemCapability.Multimedia.Audio.Volume 536 537**参数:** 538 539| 参数名 | 类型 | 必填 | 说明 | 540| -------- | -------------------------------------- | ---- | ------------------------------------------------------------ | 541| streamUsage | [StreamUsage](arkts-apis-audio-e.md#streamusage) | 是 | 音频流。 | 542| volumeLevel | number | 是 | 音量值等级。 | 543| device | [DeviceType](arkts-apis-audio-e.md#devicetype) | 是 | 设备类型。 | 544 545**返回值:** 546 547| 类型 | 说明 | 548| ------------------- | ----------------------------- | 549| number | 音频流的音量db值。 | 550 551**错误码:** 552 553以下错误码的详细介绍请参见[Audio错误码](errorcode-audio.md)。 554 555| 错误码ID | 错误信息 | 556| ------- | --------------------------------------------| 557| 6800101 | Parameter verification failed. | 558 559**示例:** 560 561```ts 562// 获取系统通过音频流、音量等级和设备类型计算出的音量db值。 563import { BusinessError } from '@kit.BasicServicesKit'; 564import { audio } from '@kit.AudioKit' 565 566try { 567 let volumeInDb : number = audio.getAudioManager().getVolumeManager().getVolumeInUnitOfDbByStream(audio.StreamUsage.STREAM_USAGE_MUSIC, 5, audio.DeviceType.SPEAKER); 568 console.info(`Gets the volume db value that system calculate by volume stream, volume level and device type. 569 success.`); 570} catch (err) { 571 let error = err as BusinessError; 572 console.error(`Failed to gets the volume db value that system calculate by volume stream, volume level and device type., error: ${error}`); 573} 574``` 575 576## on('streamVolumeChange')<sup>20+</sup> 577 578 on(type: 'streamVolumeChange', streamUsage: StreamUsage, callback: Callback\<StreamVolumeEvent>): void 579 580监听系统音频流音量变化事件(当系统音频流音量发生变化时触发)。使用callback异步回调。 581 582**系统能力:** SystemCapability.Multimedia.Audio.Volume 583 584**参数:** 585 586| 参数名 | 类型 | 必填 | 说明 | 587| -------- | -------------------------------------- | ---- | ------------------------------------------------------------ | 588| type | string | 是 | 事件回调类型,支持的事件为'streamVolumeChange',当系统音量发生变化时,触发该事件。 | 589| streamUsage | [StreamUsage](arkts-apis-audio-e.md#streamusage) | 是 | 音频流使用类型。 | 590| callback | Callback<[StreamVolumeEvent](arkts-apis-audio-i.md#streamvolumeevent20)> | 是 | 回调函数,返回变化后的音量信息。 | 591 592**错误码:** 593 594以下错误码的详细介绍请参见[Audio错误码](errorcode-audio.md)。 595 596| 错误码ID | 错误信息 | 597| ------- | --------------------------------------------| 598| 6800101 | Parameter verification failed. | 599 600**示例:** 601 602```ts 603audioVolumeManager.on('streamVolumeChange', audio.StreamUsage.STREAM_USAGE_MUSIC, (streamVolumeEvent: audio.StreamVolumeEvent) => { 604 console.info(`StreamUsage of stream: ${streamVolumeEvent.streamUsage} `); 605 console.info(`Volume level: ${streamVolumeEvent.volume} `); 606 console.info(`Whether to updateUI: ${streamVolumeEvent.updateUi} `); 607}); 608``` 609 610## off('streamVolumeChange')<sup>20+</sup> 611 612off(type: 'streamVolumeChange', callback?: Callback\<StreamVolumeEvent>): void 613 614取消监听系统音频流音量变化事件(当系统音频流音量发生变化时触发)。使用callback异步回调。 615 616**系统能力:** SystemCapability.Multimedia.Audio.Volume 617 618**参数:** 619 620| 参数名 | 类型 | 必填 | 说明 | 621| -------- | -------------------------------------- | ---- | ------------------------------------------------------------ | 622| type | string | 是 | 事件回调类型,支持的事件为'volumeChange',当取消监听系统音量变化事件时,触发该事件。 | 623| callback | Callback<[StreamVolumeEvent](arkts-apis-audio-i.md#streamvolumeevent20)> | 否 | 回调函数,返回变化后的音量信息。 | 624 625**示例:** 626 627```ts 628// 取消该事件的所有监听。 629audioVolumeManager.off('streamVolumeChange'); 630 631// 同一监听事件中,on方法和off方法传入callback参数一致,off方法取消对应on方法订阅的监听。 632let streamVolumeChangeCallback = (streamVolumeEvent: audio.StreamVolumeEvent) => { 633 console.info(`StreamUsage of stream: ${streamVolumeEvent.streamUsage} `); 634 console.info(`Volume level: ${streamVolumeEvent.volume} `); 635 console.info(`Whether to updateUI: ${streamVolumeEvent.updateUi} `); 636}; 637 638audioVolumeManager.on('streamVolumeChange', audio.StreamUsage.STREAM_USAGE_MUSIC, streamVolumeChangeCallback); 639 640audioVolumeManager.off('streamVolumeChange', streamVolumeChangeCallback); 641``` 642