Подтвердить что ты не робот

Android: Как программно настроить уровень MediaPlayer?

Как установить объем медиаплеера программно. Я использую его для уведомления о тревоге. Любая помощь высоко ценится и благодарит заранее.

4b9b3361

Ответ 1

Используя AudioManager, вы можете управлять громкостью медиаплеера.

AudioManager audioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, 20, 0);

также из MediaPlayer (но я этого не делал)

public void  setVolume  (float leftVolume, float rightVolume)

Начиная с: API уровня 1

Устанавливает громкость на этом проигрывателе. Этот API рекомендуется для балансировки вывода аудиопотоков в приложении. Если вы не пишете приложение для управления пользовательскими настройками, этот API следует использовать в предпочтении setStreamVolume (int, int, int), который устанавливает объем всех потоков определенного типа. Обратите внимание, что пройденные значения объема являются необработанными скалярами. Элементы управления пользовательского интерфейса должны масштабироваться логарифмически.

Параметры

leftValume левый объемный скаляр

rightВнутренний объемный объемный скаляр

Ответ 2

Надеемся на эту помощь

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

Для Громкость UP

 audio.adjustStreamVolume(AudioManager.STREAM_MUSIC,
                        AudioManager.ADJUST_RAISE, AudioManager.FLAG_SHOW_UI);

для Уменьшение громкости

audio.adjustStreamVolume(AudioManager.STREAM_MUSIC,
                        AudioManager.ADJUST_LOWER, AudioManager.FLAG_SHOW_UI);

Ответ 3

У вас есть метод setVolume в классе MediaPlayer. См. здесь

Ответ 4

Скрыть регулятор громкости UI:

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

Для увеличения громкости

audio.adjustStreamVolume(AudioManager.STREAM_MUSIC,
                    AudioManager.ADJUST_RAISE, 0);

для уменьшения громкости

audio.adjustStreamVolume(AudioManager.STREAM_MUSIC,
                    AudioManager.ADJUST_LOWER, 0);

Ответ 5

Прочтите эту страницу прямо здесь. Это объясняет очень хорошо. В принципе, если ваше приложение не является заменой будильника, вам нужно сделать следующий вызов в функции onCreate():

setVolumeControlStream(AudioManager.STREAM_MUSIC);

Таким образом вы можете создать объем своего приложения с помощью аппаратных кнопок.

Ответ 6

Не забудьте установить громкость левого и правого громкоговорителей.

if (System.nanoTime() == alarm){
    yourMediaPlayer.setVolume(volume, volume)}
}

Ответ 7

Попробуйте это

protected static void setVolume(int volume) {
        currentVolume = volume;
        {
            if (volume == 1) {
                volume = 2;
            }
            try {
                float vol = ((float) volume / CONSTANT.SYSTEM_MAX_VOLUME);
                mediaPlayer.setVolume(vol, vol);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }

    }

Ответ 8

Приведенный ниже код устанавливает громкость на максимальный уровень (getStreamMaxVolume()).

AudioManager am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
am.setStreamVolume(AudioManager.STREAM_MUSIC,am.getStreamMaxVolume(AudioManager.STREAM_MUSIC),0);

Ответ 9

Вы можете сделать следующее, используя Kotlin, этот код проверит, превышает ли объем носителя более 20% от максимального объема устройства, и уменьшит его до 20%.

    val audio = this.getSystemService(Context.AUDIO_SERVICE) as AudioManager
    val level = audio.getStreamVolume(AudioManager.STREAM_MUSIC)

    val maxVolume = audio.getStreamMaxVolume(AudioManager.STREAM_MUSIC)
    val percent = 0.2f
    val twintyVolume = (maxVolume * percent).toInt()

    if ( level > twintyVolume) {
        Toast.makeText(this,"audio level is $level", Toast.LENGTH_LONG).show()
        audio.setStreamVolume(AudioManager.STREAM_MUSIC,twintyVolume,0)
    }

Ответ 10

Код:

AudioManager mAudioManager = (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);
try 
 {        
   float count = 100 * 0.2f;
   Log.d("--count_float", count + "");
   Log.d("--count_final", Math.round(count) + "");
   Log.d("--count_volume", new 
   PreferenceMotionSensor(mContext).getStreamVolume());
   mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC, Math.round(count), 0);
 } 
catch (Exception e) 
 {
  Log.d("--Error", e.getMessage());
 }

Выход

D/--count_float: 20.0
D/--count_final: 20
D/--count_volume: 100