Управление звуком из приложения и входящих вызовов и SMS

Я делаю музыкальный проигрыватель, в котором мне нужно транслировать музыку с URL-адреса.

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

Я обнаружил, что это можно сделать двумя способами: с помощью AudioManager и аудиофокуса и с помощью Telephony Manager.

Но не уверен, как лучше это сделать?


person Zookey    schedule 24.01.2014    source источник
comment
Я использовал audioManager в прошлом, и он отлично работает.   -  person Rohan Kandwal    schedule 24.01.2014
comment
Не могли бы вы опубликовать свой код для audioManager? Если это сработает, я приму ваш ответ.   -  person Zookey    schedule 24.01.2014
comment
Это зависит от того, что вы хотите с ним сделать? Я имею в виду, как вы хотите использовать AudioManager?   -  person Rohan Kandwal    schedule 24.01.2014
comment
Я хочу использовать его для потокового онлайн-радио. Итак, если приложение обнаружит вызов, остановите воспроизведение музыки и воспроизведите звук звонка или смс.   -  person Zookey    schedule 24.01.2014
comment
Я не вижу причин использовать audioManager в этом случае. Вам просто нужно обнаружить входящий вызов с помощью Telephony Manager, а при обнаружении вызова просто приостановить воспроизведение музыки.   -  person Rohan Kandwal    schedule 24.01.2014
comment
Прикольно, а что с звуками входящих СМС или уведомлений?   -  person Zookey    schedule 24.01.2014
comment
Я прочитал какой-то пост, в котором пользователь на самом деле не хотел приостанавливать музыку для простого 3-секундного звука уведомления, поэтому я никогда не беспокоился об этом. Я постараюсь узнать для вас, как приостановить музыку в случае какого-либо сигнала уведомления.   -  person Rohan Kandwal    schedule 24.01.2014
comment
Хорошо, это имеет смысл об уведомлениях. А как же входящие СМС? Как с этим справиться?   -  person Zookey    schedule 24.01.2014
comment
Звук SMS/других приложений на самом деле означает звук уведомления (поскольку все показывают обновления в уведомлении), хотя я могу ошибаться.   -  person Rohan Kandwal    schedule 24.01.2014
comment
Нашел идеальный ответ на вашу проблему stackoverflow.com/q/6562880/1979347. Это может быть то, что вам нужно.   -  person Rohan Kandwal    schedule 24.01.2014
comment
Я поискал в гугле с помощью music pause sms received и обнаружил, что музыка автоматически прерывается при получении СМС. Поскольку я сам не пробовал, может быть, сначала вы должны проверить, правда это или нет.   -  person Rohan Kandwal    schedule 24.01.2014
comment
Отличные вещи, мужики! Большое тебе спасибо. :) В любом случае, если вы хотите, напишите ответ ниже, и я его приму. Может быть, это поможет кому-то.   -  person Zookey    schedule 24.01.2014
comment
Я попытался включить весь наш чат в ответ. Пожалуйста, примите это.   -  person Rohan Kandwal    schedule 24.01.2014


Ответы (1)


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

Также, если вы хотите приостановить музыку во время получения звука уведомления, вы можете увидеть ответ Как приостановить музыку при звонке телефона, получении смс и т. д.?. Это соответствует этой потребности. Также при поиске в Google с помощью запроса music pause sms received я обнаружил, что многие пользователи жаловались на то, что сама ОС Android приостанавливает воспроизведение музыки при получении любого звука уведомления. Также не было настройки, чтобы отключить это. Так как я никогда не пробовал это лично, я не могу вам сказать, на каких версиях присутствовал этот баг. Вы можете исследовать себя или задать новый вопрос здесь, надеюсь, кто-то знает больше, чем я.

person Rohan Kandwal    schedule 24.01.2014