如何在接听电话时停止电话铃声,但不要全局静音

时间:2012-08-20 13:42:19

标签: android

我知道如何在手机响铃时全局静音:

AudioManager audioManager = (AudioManager)context.getSystemService(Context.AUDIO_SERVICE);                  
audioManager.setRingerMode(AudioManager.RINGER_MODE_SILENT);

但我想将手机铃声静音,而不是全球静音。就像你点击手机上的声音按钮一样,它会停止响铃。

我如何以编程方式执行此操作?

1 个答案:

答案 0 :(得分:7)

当手机处于振铃状态时,你可以在铃声流上静音,然后在铃声结束后再打开它。您可以使用内容观察器来检查手机的当前状态。我想从ICS开始,铃声和通知声音都在同一个流上播放,我想不出另一种方法。它确实意味着当手机响铃时你的通知没有声音。

audioManager.setStreamMute(AudioManager.STREAM_RING, true);