Audio Manager类的方法与较低版本无法正常工作

时间:2014-08-07 09:33:59

标签: android android-audiomanager

以下是我更改Android设备铃声模式的代码:

AudioManager am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
int max = am.getStreamMaxVolume(AudioManager.STREAM_RING);
am.setStreamVolume(AudioManager.STREAM_RING, max, 0);

使用Android Jelly Bean,代码绝对精细与Ginger Bread一起使用!
我认为在Ginger Bread之后可能已经在API中添加了这些方法,但它在API级别1中添加,就像在开发人员站点中一样:

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

那么,任何人都可以请帮助并告诉我这里出了什么问题以及可能的解决方案 提前 BIG thanx。

2 个答案:

答案 0 :(得分:0)

检查以下代码

public void setRinger2Normal(){       
    AudioManager audioManager= 
     (AudioManager) getBaseContext().getSystemService(Context.AUDIO_SERVICE);
    audioManager.setRingerMode(AudioManager.RINGER_MODE_NORMAL); 
}

答案 1 :(得分:0)

我希望这可以帮到你

AudioManager am= (AudioManager) getBaseContext().getSystemService(Context.AUDIO_SERVICE);

//For Normal mode
am.setRingerMode(AudioManager.RINGER_MODE_NORMAL);

//For Silent mode
am.setRingerMode(AudioManager.RINGER_MODE_SILENT);

//For Vibrate mode
am.setRingerMode(AudioManager.RINGER_MODE_VIBRATE);

这与我合作

public void setMaxVolume(Context mContext) {
        AudioManager am = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
        am.setStreamVolume(AudioManager.STREAM_MUSIC, am.getStreamMaxVolume(AudioManager.STREAM_MUSIC), 0);
    }