如何在通话期间禁用播放闹钟
我想在来电时禁用播放闹钟。 只能听到呼叫铃声,而不能听到闹钟铃声。
怎么做呢?
I want to disable a playing alarm when a call comes .
Only the call ringtone should be heard and not the alarm tone.
How to do it?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
从活动、服务或任何有上下文对象的地方:
只需记住取消静音即可。或者,如果您的进程在通话结束后不再需要,并且系统销毁了它 - 静音就会消失。
但是,如果您保持进程处于活动状态,则保留对 AlarmManager 的引用很重要。我发现的一个错误是,如果您调用
setStreamMute(..., true)
然后丢失引用,无论您调用setStreamMute(..., false)
多少次 code> 它永远不会取消静音。因此,只需保留对 AudioManager 的静态引用即可。
From an activity, service or a anywhere you have a context object:
Just remember to take off the mute. Or, if your process is unneeded after the call ended, and the system destroys it - the mute goes off.
But, if you keep your process alive, its important that you keep a reference to your AlarmManager. A bug I found is, if you call
setStreamMute(..., true)
and then lose your reference, no matter how many times you callsetStreamMute(..., false)
it never unmutes.So just hold a static reference to the AudioManager.