Что такое фокус звука в Android-классе AudioManager?
Класс AudioManager
имеет метод abandonAudioFocus()
и другой метод requestAudioFocus()
. Интересно, что такое аудиофокус? А что произойдет, если объект AudioManager
получит фокус аудио или потерял фокус звука?
Спасибо!
Ответы
Ответ 1
Это связано с приоритетом при использовании динамиков, чтобы предотвратить одновременное воспроизведение многих вещей или их переопределение. Если вы requestAudioFocus()
, вы заявляете, что хотите управления. Затем вы можете прослушать onAudioFocusChange(int focusChange)
, чтобы узнать, пытается ли что-нибудь еще воспроизвести звук. Вы можете сильно потерять фокус (например, во время телефонного разговора), но затем вы можете получить его позже. Вы должны abandonAudioFocus()
, когда закончите.
Ответ 2
Вы используете фокус звука при настройке того, какое приложение имеет приоритет воспроизведения. Например, вы можете настроить, что должно делать ваше приложение при воспроизведении аудиофайла, а другое приложение хочет сосредоточиться и что-то сыграть. Если вы не настроите, что произойдет, эти случаи, другое приложение будет просто воспроизводить аудио по вашему.
Я написал сообщение в блоге об этом: http://markojerkic.com/handling-audio-focus-in-android/