2016-10-02 2 views
0

В моем приложении Android очень распространенный сценарий для одновременного получения нескольких уведомлений. Каждое уведомление может иметь настраиваемый звук (установленный пользователем) для распознавания типа уведомления без просмотра строки состояния. Проблема заключается в том, что при одновременном отправке нескольких уведомлений звуки перекрываются, и результат является неприятным шумом, кроме того, чтобы полностью разбить эту функцию, чтобы распознавать тип уведомлений, только слыша звук.как предотвратить перекрывающиеся звуки при нескольких уведомлениях

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

ответ

0

Если вы используете класс SoundPool, вы можете установитьMaxStreams() в 1, чтобы избежать воспроизведения нескольких звуков. Кроме того, класс Soundpool позволяет вам устанавливать приоритет для каждого звука уведомления, чтобы он мог знать, какой звук играть, если одновременно воспроизводится несколько звуков. К сожалению, Soundpool не поддерживает очереди.

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

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