Skip to content
阅读进度

如何处理 AUDIOFOCUS_GAIN_TRANSIENT 和 AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK? ​

返回 兼容与平台扩展 目录

标准回答 ​

AUDIOFOCUS_GAIN_TRANSIENT 表示请求短暂独占焦点,如短语音提示;AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK 表示请求短暂焦点并允许原播放器压低音量继续播放。它们是请求焦点时的 gain 类型。

**原播放器收到什么:**失去焦点的一方通常按 AUDIOFOCUS_LOSS_TRANSIENT 暂停,按 AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK 降低音量或按业务暂停;重新收到 AUDIOFOCUS_GAIN 后恢复音量,并仅在此前确有播放意图时恢复播放。系统自动 duck 等行为需按版本与音频属性判断。

通俗例子 ​

一段短导航提示可允许背景音乐压低音量;短时语音交互则可能需要其他播放器暂停。实际策略还受系统版本和音频用途影响。

内容来源 ​

用完整回答理解机制,用真实证据解释项目。