as

Settings
Sign out
Notifications
Alexa
亚马逊应用商店
Ring
AWS
文档
Support
Contact Us
My Cases
新手入门
设计和开发
应用发布
参考
支持
跳转到主要内容
音频焦点会话允许进行音频焦点管理,例如请求音频焦点和释放音频焦点。播放流使用音频焦点会话来请求音频焦点或释放音频焦点。播放流构建器可以使用setAudioFocusSessionId来指定要使用的音频焦点会话。

所需服务

API需要声明系统音频服务:

使用的类型

构造函数

new AudioFocusSession()

new AudioFocusSession(id): AudioFocusSession

参数

id
number 会话ID获取自

返回值

AudioFocusSession

属性

sessionId

sessionId: number

focusUsage

focusUsage: number

方法

getAudioSessionId()

getAudioSessionId(): number 获取此实例的会话ID。

返回值

number number 分配给此实例的会话ID

示例

/* 返回会话ID并将其存储在sessionId中 * const session = new AudioFocusSession(1); const sessionId = session.getAudioSessionId(); //值应为1

getUsage()

getUsage(): number 获取此焦点会话的当前音频使用类型。如果未请求焦点,则返回USAGE_NONE。

返回值

number number 来自types/AudioCoreClientTypes.AudioUsageType枚举的当前音频使用类型

示例


registerAudioFocusListenerAsync()

registerAudioFocusListenerAsync(callback: (value: any) => void): Promise<AudioFocusStatus> 注册回调以接收音频焦点更改通知。每次会话只能注册一个回调函数。

参数

callback
(value: any) => void 接收焦点变化事件的函数。事件包括:
  • GRANTED (0):焦点已获批准
  • RELEASED (1):焦点已释放
  • DUCKED (2):音频被调低(音量降低)
  • PAUSED (3):音频已暂停
  • STOPPED (4):音频停止

返回值

Promise<AudioFocusStatus> Promise 解析为如下的Promise:
  • AUDIO_FOCUS_STATUS_NO_ERROR (0):回调注册成功
  • AUDIO_FOCUS_STATUS_BAD_VALUE (-2):回调无效
  • AUDIO_FOCUS_STATUS_NO_INIT (-3):会话未初始化
  • AUDIO_FOCUS_STATUS_INVALID_OPERATION (-8):回调已注册

示例


releaseAudioFocusAsync()

releaseAudioFocusAsync(): Promise<AudioFocusStatus> 释放之前请求的音频焦点。必须在音频播放完成或不再需要焦点时调用此方法。

返回值

Promise<AudioFocusStatus> Promise 解析为如下的Promise:
  • AUDIO_FOCUS_STATUS_NO_ERROR (0):焦点成功释放
  • AUDIO_FOCUS_STATUS_BAD_VALUE (-2):会话状态无效
  • AUDIO_FOCUS_STATUS_NO_INIT (-3):会话未初始化
  • AUDIO_FOCUS_STATUS_INVALID_OPERATION (-8):无焦点保持

示例


requestAudioFocusAsync()

requestAudioFocusAsync(attr?: AudioFocusAttributes | undefined): Promise<AudioFocusStatus> 请求具有指定属性的会话的音频焦点。授予焦点后,可以根据使用类型调低、暂停或停止任何先前聚焦的音频。

参数

attr?
AudioFocusAttributes | undefined 焦点请求的可选配置。如果未提供,则默认设置为USAGE_MEDIA。

返回值

Promise<AudioFocusStatus> Promise 解析为如下的Promise:
  • AUDIO_FOCUS_STATUS_NO_ERROR (0):已成功授予焦点
  • AUDIO_FOCUS_STATUS_DENIED (1):焦点请求被拒绝
  • AUDIO_FOCUS_STATUS_DELAYED (2):焦点请求延迟
  • AUDIO_FOCUS_STATUS_BAD_VALUE (-2):属性无效
  • AUDIO_FOCUS_STATUS_NO_INIT (-3):会话未初始化
  • AUDIO_FOCUS_STATUS_INVALID_OPERATION (-8):操作无效

示例


unregisterAudioFocusListenerAsync()

unregisterAudioFocusListenerAsync(): Promise<AudioFocusStatus> 注销之前注册的焦点变更回调。

返回值

Promise<AudioFocusStatus> Promise 解析为如下的Promise:
  • AUDIO_FOCUS_STATUS_NO_ERROR (0):回调注销成功
  • AUDIO_FOCUS_STATUS_BAD_VALUE (-2):会话状态无效
  • AUDIO_FOCUS_STATUS_NO_INIT (-3):会话未初始化
  • AUDIO_FOCUS_STATUS_INVALID_OPERATION (-8):未注册任何回调

示例


最后修改于 2026年10月26日