2016-11-17 5 views
0

Я хочу установить громкость сигнала тревоги. Я использую этот код, но ничего не происходит с томом, только журналы показывают значение тома, которое я установил. Что мне делать, чтобы реально изменить громкость?Изменение громкости сигнала тревоги

Мой код:

final MediaPlayer mediaPlayer = MediaPlayer.create(this, RingtoneManager.getActualDefaultRingtoneUri(this,RingtoneManager.TYPE_ALARM)); 

     final AudioManager audio = (AudioManager) getSystemService(Context.AUDIO_SERVICE); 
     final int currentVolume = audio.getStreamVolume(AudioManager.STREAM_ALARM); 
     Log.e("Point_1", "Volume " + currentVolume); 
     audio.setStreamVolume(AudioManager.STREAM_ALARM,0,0); 
     mediaPlayer.start(); 
     new Timer().schedule(new TimerTask() { 
      @Override 
      public void run() { 
       mediaPlayer.stop(); 
       Log.e("Point_1", "Volume_after " + audio.getStreamVolume(AudioManager.STREAM_ALARM)); 
      } 

    }, 5000); 

Спасибо.

ответ

0

использовать этот код

AudioManager audioManager = 
    (AudioManager)getSystemService(Context.AUDIO_SERVICE); 

audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, 
          [int value], 
          [if desired a flag]); 

вы должны использовать AudioManager.STREAM_MUSIC вместо AudioManager.STREAM_ALARM

и посмотреть How to correctly set MediaPlayer audio stream type слишком

+0

Эй, спасибо! Кроме того, можете ли вы рассказать мне, есть ли способ получить максимальный объем, разделив его на 100, а затем использовать его как значение для setStreamVolume? – Steve

+0

см. Это http://stackoverflow.com/questions/15670524/how-to-turn-the-volume-to-max-programmatically-on-android – zohreh

Смежные вопросы