Как получить на Android-устройстве текущий тип носителя? - PullRequest
0 голосов
/ 18 сентября 2018

Я использую AudioManager в своем сервисе для управления громкостью мультимедиа, но я могу контролировать только тип мультимедиа, который я записываю в setStreamVolume(). Я пытался использовать getRingerMode() для получения типа мультимедиа, но контент принадлежит моей службе.

int currentType = audioManager.getRingerMode();
int currentVoice = audioManager.getStreamVolume(currentType);

audioManager.setStreamVolume(currentType, currentVoice, AudioManager.FLAG_PLAY_SOUND | AudioManager.FLAG_SHOW_UI);

Как я могу контролировать громкость других приложений?

Ответы [ 2 ]

0 голосов
/ 18 сентября 2018

Спасибо за Дьюи Рида и Ашвина Соланки. Я получаю вдохновение от Ашвина Соланки, и Дьюи Рид помогает мне читать Android Source. Чтобы получить текущий тип носителя, можно использовать adjustVolume() и установите значение direction как AudioManager.ADJUST_SAME. Например : audioManager.adjustVolume(AudioManager.ADJUST_SAME, AudioManager.FLAG_PLAY_SOUND| AudioManager.FLAG_SHOW_UI); Теперь окно AudioControl показывается и имеет текущий тип мультимедиа.

0 голосов
/ 18 сентября 2018

Ссылка: как программно увеличить или уменьшить громкость в Android

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


Button upButton = (Button) findViewById(R.id.upButton);
        upButton.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {

//To increase media player volume               
                audioManager.adjustVolume(AudioManager.ADJUST_RAISE, AudioManager.FLAG_PLAY_SOUND);
            }
        });

        Button downButton = (Button) findViewById(R.id.downButton);
        downButton.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {

//To decrease media player volume
                audioManager.adjustVolume(AudioManager.ADJUST_LOWER, AudioManager.FLAG_PLAY_SOUND);             
            }
        });
...