所需服务
API需要声明系统音频服务:使用的类型
构造函数
new AudioFocusManager()
new AudioFocusManager(): AudioFocusManager返回值
AudioFocusManager属性
defaultFocusSession
static defaultFocusSession: AudioFocusSession = null
方法
createAudioFocusSessionAsync()
static createAudioFocusSessionAsync(): Promise<AudioFocusSession>
创建一个新的AudioFocusSession。每个会话可以独立管理音频焦点请求和回调。可以创建多个会话来独立管理不同的音频流。
示例用例:
- 不同的音乐播放和导航会话
- 语音助手回复的单独会话
- 游戏音频的独立会话
返回值
Promise<AudioFocusSession>
Promise 解析为如下的Promise:
- 新的AudioFocusSession对象(如果成功)
STATUS_NO_MEMORY (-1):分配会话失败STATUS_NO_INIT (-3):未初始化音频焦点系统STATUS_DEAD_OBJECT (-5):服务器通信错误
示例
destroyAudioFocusSessionAsync()
static destroyAudioFocusSessionAsync(sessionObject: AudioFocusSession): Promise<AudioFocusStatus>
销毁现有的音频焦点会话并释放所有关联资源。当不再需要会话来释放系统资源时,必须调用此方法。该对话中所有活跃的焦点请求都将被自动释放。
重要须知:销毁会话对象后,请勿尝试使用该对象。
参数
sessionObject
AudioFocusSession 要销毁的会话返回值
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):会话已被销毁
示例
getDefaultAudioFocusSessionAsync()
static getDefaultAudioFocusSessionAsync(): Promise<AudioFocusSession>
获取默认音频焦点会话。这是一个单例实例,在音频流未明确指定焦点会话时使用。默认会话在首次访问时创建,一直持续到应用程序终止。
重要注意事项:
- 使用默认焦点在所有组件之间共享默认会话
- 默认会话中的焦点更改会影响使用该会话的所有流
- 要实现独立焦点控制,改为创建专用会话
返回值
Promise<AudioFocusSession>
Promise 解析为如下的Promise:
- 默认AudioFocusSession实例,或通过以下项拒绝:
STATUS_NO_MEMORY (-1):无法创建默认会话STATUS_NO_INIT (-3):未初始化音频焦点系统STATUS_DEAD_OBJECT (-5):服务器通信错误
示例
getMajorVersion()
static getMajorVersion(): number
获取AudioManager的主版本号。可用于兼容性检查和功能检测。
返回值
number
number 模块的主版本号
getMinorVersion()
static getMinorVersion(): number
获取AudioManager的次版本号。可用于兼容性检查和功能检测。
返回值
number
number 模块的次版本号
getPatchVersion()
static getPatchVersion(): number
获取AudioManager的补丁版本号。可用于兼容性检查和功能检测。
返回值
number
number 模块的补丁版本号

