HarmonyOS 如何正确处理与系统电话的互斥表现

1、在开启MIC采集和MOVIE播放时来电:

a 响铃时会收到renderer.onInterruptEvent(hint=Pause)

b 接通时会收到capturer.onInterruptEvent(hint=Stop)

c 挂断时会收到renderer.onInterruptEvent(hint=Resume)

结果表现为播放会恢复,但采集无法恢复。

2、在开启VoiceCommunication采集和VoiceCommunication播放时来电:

a 响铃时没有任何事件。

b 接通时会收到。capturer.onInterruptEvent(hint=Stop) 和 renderer.onInterruptEvent(hint=Stop)

c 挂断时没有任何事件

结果表现为播放和采集均无法恢复。所以,应该怎么处理挂断后恢复?

HarmonyOS
1天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
fox280

1、发送hintType是pause的时候,后续待焦点空闲,就会有resume通知;发送hintType是stop的时候,就不会再有后续了。

2、建议VoIP场景就按照实际用途,指定为VoiceCommunication或VideoCommunication,设为Music或Movie的话无法触发系统3A效果。

3、如果只是挂断蜂窝电话后恢复,那电话模块应该有提供专门的接口,可以监听通话状态,应用可以主动在通话结束的时候重新触发VoIP的Start。

Music或Movie被其他应用的音频抢走焦点时,后续有没有resume通知得看抢走焦点的音频类型。收到的焦点事件里面hintType如果是PAUSE,后续就有RESUME。如果hintType是STOP,后续就没有RESUME。

分享
微博
QQ
微信
回复
1天前
相关问题
HarmonyOS TextInput处理电话号码格式
43浏览 • 1回复 待解决
HarmonyOS 拨打电话系统能力
521浏览 • 1回复 待解决
升级鸿蒙系统后打电话断音
10124浏览 • 1回复 待解决
web页面栈不正确如何处理
255浏览 • 1回复 待解决
liteos-m怎么实现进程间互斥
6244浏览 • 1回复 已解决
HarmonyOS 如何调用拨打电话界面
28浏览 • 1回复 待解决
如何跳转通讯录 、 打电话
1855浏览 • 1回复 待解决
HarmonyOS 系统web交互
22浏览 • 1回复 待解决