通过MediaPlayer播放语音邮件会使警报音量静音

时间:2015-08-21 21:57:23

标签: android android-mediaplayer android-alarms

我使用MediaPlayer从URL播放音频文件。文件播放正常,但播放后(如果应用程序没有被明确杀死),闹铃铃声是静音。在播放结束时我需要清除/重置以使其不发生?

我用来控制语音信箱播放的文件的代码。 http://hastebin.com/ehijobuwoc.coffee

2 个答案:

答案 0 :(得分:0)

您可以在播放开始时尝试使用getStreamVolume,然后在播放完成后使用setStreamVolume将其设置回来。

http://developer.android.com/reference/android/media/AudioManager.html#setStreamVolume(int, int, int)

答案 1 :(得分:0)

好的,找到了有用的东西。解决了警报问题,并允许我通过听筒播放语音邮件。

我需要将onMode设置回onsttop()时的状态:

// set mode back to normal, and speakerphone back to true.
AudioManager am = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
am.setMode(prevMode);
am.setSpeakerphoneOn(true);

并在init中:

private void initMediaPlayer() {
    // Make the media play through earpiece instead of through speaker(default)
    AudioManager am = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
    prevMode = am.getMode();
    am.setMode(AudioManager.MODE_IN_COMMUNICATION);
    am.setSpeakerphoneOn(false);

感谢@DreadfulWeather带领我回答这个问题,并提出了一些有用的问题。