2016-02-24 1 views
1

Можно ли выяснить, кто взял аудиофокус? У меня есть аудио-приложение, которое потеряло аудиофокус без причины (я знаю это из отчетов). Можно ли выяснить, кто взял фокус звука из моего приложения? В аудиомастере нет апи, но есть ли какой-нибудь инструмент? Или можно ли это делать на корневом телефоне? БлагодаряАудиофокус потерян - кто его взял?

+0

Вы можете вставить свои отчеты здесь? –

+0

Я знаю только, что onAudioFocusChange вызывается со значением AudioManager.AUDIOFOCUS_LOSS. Таким образом, это означает, что приложение потеряло фокус. Но никакое другое приложение не было активным, поэтому не было уверенности в том, какое приложение оно заняло. – vandzi

+0

Каково сообщение о том, что вы теряете фокус в своем «отчете»? – barq

ответ

1

Я предполагаю, что вы получаете сообщение журнала:

AudioFocus abandonAudioFocus() 

Вы можете использовать метод onAudioFocusChange(int focusChange), чтобы увидеть, что берет свое внимание.

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

В противном случае нет публичных вызовов API, которые вы можете использовать для определения того, какое приложение заняло аудиофокус, но вы можете узнать, прочитав LogCat, чтобы узнать, что происходит еще во время потери фокуса ,

+0

«LogCat» очень полезна в этой области, рассказывает о том, какой именно класс фокусируется, даже если его нет в вашем приложении. – weston

Смежные вопросы