Intereting Posts
Исключение в потоке «main» java.lang.NoClassDefFoundError: junit / textui / ResultPrinter Как развернуть подписанный APK при нажатии кнопки «Выполнить» в Android Studio? Различные регулярные выражения приводят к платформе Java SE и Android Размер диалогового окна Android с фиксированным размером. Что такое Major & Minor? Задайте текст для целочисленного значения Круговой градиент в android В чем разница между файлами Acitvity_Main.xml и Fragment_main.xml в Android Studio Я получаю намерение INSTALL_REFERRER из магазина приложений amazon? Как я могу запускать несколько машин Andy Android: EditText с индикатором выполнения? Диспетчер виртуальных устройств Android падает с «двойным свободным или повреждением» Firebase getDownloadURL Как показывать баннерную рекламу с перерывами в gridview Надежно скрывать программную панель Не найден ресурс, который соответствует указанному имени: attr 'android: keyboardNavigationCluster'. При обновлении до Support Library 26.0.0

Как контролировать объем мультимедиа?

Я хотел бы контролировать объем мультимедиа с помощью своего приложения, используя обычные кнопки регулировки громкости. Проблема в том, что мое приложение использует короткие звуки, и они могут раздражать пользователя. Вы можете регулировать громкость только во время воспроизведения (в течение 1 секунды), после чего начинает регулировать громкость звонка. Как я могу настроить объем мультимедиа по умолчанию?

Solutions Collecting From Web of "Как контролировать объем мультимедиа?"

В своей работе onCreate () вы можете:

setVolumeControlStream(AudioManager.STREAM_MUSIC); 

Я не пробовал это, но вы должны иметь возможность перехватывать обычные кнопки томов, переопределяя onKeyDown(int keyCode, KeyEvent event) в своей деятельности. Проверьте коды KEYCODE_VOLUME_UP и KEYCODE_VOLUME_DOWN .

Использование AudioManager.setStreamVolume (int, int, int) с STREAM_MUSIC для параметра streamType должно работать, и если вы onKeyDown(...) true из onKeyDown(...) (чтобы указать, что вы обработали событие), это должно помешать системе Регулировка громкости звонка. Убедитесь, что вы вернули false для всех других кодов клавиш, которые вы не обрабатываете.

Пожалуйста, не обрабатывайте сами клавиши громкости – почти mpossible to guarantee что вы не нарушите поведение клавиш mpossible to guarantee громкости.

Вызовите этот API в своем onCreate():

 setVolumeControlStream(AudioManager.STREAM_MUSIC); 

Это говорит AudioManager, что когда ваше application has focus , клавиши громкости должны регулировать громкость музыки.