HarmonyOS 使用OH\_Audio,当前app播放过程中被其他app打断播放后,无法收到可以恢复播放?

使用OH\_Audio,当前app播放过程中被其他app打断播放,在其他app结束播放后,当前app无法收到Resume通知去处理恢复播放start的处理的原因是什么?或者,如何操作的情况,可以收到Resume的通知回调。

阅读 602
1 个回答

首先,需要设置正确的场景OH\_AudioStreamBuilder\_SetRendererInfo,其次,把AUDIOSTREAM\_INTERRUPT\_HINT\_RESUME的处理挪到AUDIOSTREAM\_INTERRUPT\_FORCE下的switch中。

代码里把

OH_AudioStreamBuilder_SetRendererInfo(rendererBuilder, AUDIOSTREAM_USAGE_VOICE_COMMUNICATION); 

注释了,所以默认就是Music流。当播放Music流时,其他应用播放Music流,会导致本应用收到Stop通知。一旦收到Stop,就不再会收到Resume了,这是音频焦点策略。

如果启动的是AUDIOSTREAM\_USAGE\_VOICE\_COMMUNICATION流,那么其它应用播放Music,并不会打断本应用的VOICE\_COMMUNICATION流, 但是此时手机来点会打断VOICE\_COMMUNICATION流。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进