【发布时间】:2020-06-12 00:25:06
【问题描述】:
我正在使用 cordova-plugin-multi-player 使用 Cordova 构建一个简单的音频应用程序。
一切(在后台播放、管理网络更改)在 Android 中都可以顺利运行,除非另一个应用请求音频焦点。然后其他应用释放焦点后播放将不会继续。 失去焦点后我找不到如何重新获得焦点(例如,在发送 Whatsapp 音频消息后)。 这是我在 adb 日志中得到的:
MultiPlayer: RadioPlugin : RADIO STATE - PLAYING...
MultiPlayer: RadioPlayerService : Player state changed. Stopped focus loss
MultiPlayer: RadioPlugin : RADIO STATE - STOPPED FOCUS LOSS...
这是完美的 AFAIK。问题是它只是在其他应用释放焦点后停留在那里。
我已经在
中意识到了这个选项navigator.multiPlayer.initialize...
else if (s == 'STOPPED_FOCUS_LOSS') {
// the media was stopped after other app requested focus
}
我可以在 s == 'STOPPED_FOCUS_LOSS' 时触发一个函数,但这会在失去焦点后立即发生,所以这并不是我真正需要的,它是在其他应用程序释放音频焦点后重新开始播放(或重新获得焦点)。
对不起,如果我在这里遗漏了一些非常基本的东西,这是我第一次处理音频焦点:p
我找到了这个插件Cordova-plugin-audiofocus,我现在正在检查它是否有帮助。
感谢任何提示!
【问题讨论】:
标签: android cordova audio cordova-plugins