harmony 鸿蒙Interface (AudioSessionManager)

  • 2025-06-12
  • 浏览 (6)

Interface (AudioSessionManager)

说明: 本模块首批接口从API version 12开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

音频会话管理。

在使用AudioSessionManager的接口之前,需先通过getSessionManager获取AudioSessionManager实例。

activateAudioSession12+

activateAudioSession(strategy: AudioSessionStrategy): Promise<void>

激活音频会话。使用Promise异步回调。

系统能力: SystemCapability.Multimedia.Audio.Core

参数:

参数名 类型 必填 说明
strategy AudioSessionStrategy 音频会话策略。

返回值:

类型 说明
Promise<void> Promise对象。无返回结果的Promise对象。

错误码:

以下错误码的详细介绍请参见通用错误码说明文档Audio错误码

错误码ID 错误信息
401 Parameter error. Possible causes: 1.Mandatory parameters unspecified. 2.Incorrect parameter types.
6800101 Parameter verification failed.
6800301 System error. Returned by promise.

示例:

import { BusinessError } from '@kit.BasicServicesKit';

let strategy: audio.AudioSessionStrategy = {
  concurrencyMode: audio.AudioConcurrencyMode.CONCURRENCY_MIX_WITH_OTHERS
};

audioSessionManager.activateAudioSession(strategy).then(() => {
  console.info('activateAudioSession SUCCESS');
}).catch((err: BusinessError) => {
  console.error(`ERROR: ${err}`);
});

deactivateAudioSession12+

deactivateAudioSession(): Promise<void>

停用音频会话。使用Promise异步回调。

系统能力: SystemCapability.Multimedia.Audio.Core

返回值:

类型 说明
Promise<void> Promise对象。无返回结果的Promise对象。

错误码:

以下错误码的详细介绍请参见Audio错误码

错误码ID 错误信息
6800301 System error. Returned by promise.

示例:

import { BusinessError } from '@kit.BasicServicesKit';

audioSessionManager.deactivateAudioSession().then(() => {
  console.info('deactivateAudioSession SUCCESS');
}).catch((err: BusinessError) => {
  console.error(`ERROR: ${err}`);
});

isAudioSessionActivated12+

isAudioSessionActivated(): boolean

检查音频会话是否已激活。

系统能力: SystemCapability.Multimedia.Audio.Core

返回值:

类型 说明
boolean 音频会话是否处于激活状态。true表示已激活,false表示已停用。

示例:

let isActivated = audioSessionManager.isAudioSessionActivated();

on(‘audioSessionDeactivated’)12+

on(type: ‘audioSessionDeactivated’, callback: Callback<AudioSessionDeactivatedEvent>): void

监听音频会话停用事件(当音频会话停用时触发)。使用callback异步回调。

系统能力: SystemCapability.Multimedia.Audio.Core

参数:

参数名 类型 必填 说明
type string 事件回调类型,支持的事件为’audioSessionDeactivated’,当音频会话停用时,触发该事件。
callback Callback<AudioSessionDeactivatedEvent> 回调函数,返回音频会话停用原因。

错误码:

以下错误码的详细介绍请参见通用错误码说明文档Audio错误码

错误码ID 错误信息
401 Parameter error. Possible causes: 1.Mandatory parameters unspecified. 2.Incorrect parameter types.
6800101 Parameter verification failed.

示例:

audioSessionManager.on('audioSessionDeactivated', (audioSessionDeactivatedEvent: audio.AudioSessionDeactivatedEvent) => {
  console.info(`reason of audioSessionDeactivated: ${audioSessionDeactivatedEvent.reason} `);
});

off(‘audioSessionDeactivated’)12+

off(type: ‘audioSessionDeactivated’, callback?: Callback<AudioSessionDeactivatedEvent>): void

取消监听音频会话停用事件。使用callback异步回调。

系统能力: SystemCapability.Multimedia.Audio.Core

参数:

参数名 类型 必填 说明
type string 事件回调类型,支持的事件为’audioSessionDeactivated’,当取消监听音频会话停用事件时,触发该事件。
callback Callback<AudioSessionDeactivatedEvent> 回调函数,返回音频会话停用原因。

错误码:

以下错误码的详细介绍请参见通用错误码说明文档Audio错误码

错误码ID 错误信息
401 Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types.
6800101 Parameter verification failed.

示例:

// 取消该事件的所有监听。
audioSessionManager.off('audioSessionDeactivated');

// 同一监听事件中,on方法和off方法传入callback参数一致,off方法取消对应on方法订阅的监听。
let audioSessionDeactivatedCallback = (audioSessionDeactivatedEvent: audio.AudioSessionDeactivatedEvent) => {
  console.info(`reason of audioSessionDeactivated: ${audioSessionDeactivatedEvent.reason} `);
};

audioSessionManager.on('audioSessionDeactivated', audioSessionDeactivatedCallback);

audioSessionManager.off('audioSessionDeactivated', audioSessionDeactivatedCallback);

你可能感兴趣的鸿蒙文章

harmony 鸿蒙Audio Kit(音频服务)

harmony 鸿蒙Interface (AudioCapturer)

harmony 鸿蒙Interface (AudioManager)

harmony 鸿蒙Interface (AudioRenderer)

harmony 鸿蒙Interface (AudioRoutingManager)

harmony 鸿蒙Interface (AudioSpatializationManager)

harmony 鸿蒙Interface (AudioStreamManager)

harmony 鸿蒙Interface (AudioVolumeGroupManager)

harmony 鸿蒙Interface (AudioVolumeManager)

harmony 鸿蒙Constants

0  赞