Настройка громкости системы Android - PullRequest
3 голосов
/ 06 февраля 2012

Я пишу приложение, которое обрабатывает следующее:

  1. Silent - отключает звук телефона
  2. Низкий - делает громкость телефона на 1 пункт выше уровня звука
  3. Средний - увеличивает громкость телефона на средний
  4. High - Максимальная громкость телефона

Громкость телефона включает громкость звонка, видео, аудио, игр и т. Д.

Я знаю, как добиться бесшумного режима через AudioManager. Но за 2-4 я не смог найти ни одного полезного фрагмента кода. Что мне нужно сделать?

Ответы [ 2 ]

18 голосов
/ 14 марта 2013

Добавьте это в методе onCreate() вашего кода, а затем поэкспериментируйте со значением 0, чтобы увеличить или уменьшить громкость, где 0 означает OFF.

AudioManager mgr=null;

mgr=(AudioManager)getSystemService(Context.AUDIO_SERVICE);
mgr.setStreamVolume(AudioManager.STREAM_MUSIC, 0, AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE);
mgr.setStreamVolume(AudioManager.STREAM_RING, 0, AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE);
mgr.setStreamVolume(AudioManager.STREAM_ALARM, 0, AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE);
mgr.setStreamVolume(AudioManager.STREAM_SYSTEM, 0, AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE);
mgr.setStreamVolume(AudioManager.STREAM_NOTIFICATION, 0, AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE);
1 голос
/ 07 февраля 2012

Выезд http://thinkandroid.wordpress.com/2010/04/05/dealing-with-the-android-media-player/

Шаги:

  • получить аудио человека.
  • получить требуемый поток.
  • вызовсоответствующий метод в потоке.

Например:

mAudioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC, AudioManager.ADJUST_RAISE, AudioManager.FLAG_SHOW_UI);
  • , чтобы получить максимальный объем:

    int maxVolume = mAudioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...