Обработка Audio Focus для медиаплеера (запрос не выполнен, запрос задержан, потеря фокуса) - PullRequest
0 голосов
/ 07 апреля 2020

Я учусь обращаться с аудио-фокусом в Android с этого сайта . Автор более или менее четко написал коды. Однако у меня есть три вопроса, которые остались без ответа. (Предположим, что я реализовал OnAudioFocusChangeListener в своем приложении.)

1. Рассмотрим случай, когда я запрашиваю фокусировку звука (AUDIOFOCUS_GAIN), но система это отрицает ( AUDIOFOCUS_REQUEST_FAILED). Теперь, кроме того, что я не должен запускать свой медиаплеер, что мне делать? Должен ли я постоянно запрашивать фокус, пока он не будет предоставлен (в al oop в отдельном потоке)? Или слушатель предупредит меня, когда я получу запрос?

2. Рассмотрим случай, когда система предоставляет AUDIOFOCUS_REQUEST_DELAYED. документация гласит,

Запрос на изменение фокуса, предоставление которого задерживается: запрос был успешным, но запрашивающему будет предоставлен звуковой фокус только после того, как условие, которое помешало немедленному предоставлению, имело закончилась.

Поскольку фокусировка задерживается, как я узнаю, когда мне был предоставлен полный аудиофокус? Через слушателя? Или через al oop, как указано выше?

3. Если мое приложение теряет фокус во время воспроизведения мультимедиа (AUDIOFOCUS_LOSS), и я не отказываюсь от фокуса, будет ли система позже предоставьте мне фокус автоматически, когда другое приложение, запрашивающее фокус, откажется от него, или мне придется запросить его снова?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...