Android - с помощью AudioManager для воспроизведения / приостановки музыки?

Мой вопрос: как я могу использовать класс AudioManager, чтобы 1) посмотреть, открыта ли музыкальная служба, и 2) если она приостановлена, воспроизвести ее, если она воспроизводится, приостановить ее..?

До сих пор все, что я действительно сделал, это инициализировал его экземпляр:

AudioManager AM = (AudioManager) getSystemService(AUDIO_SERVICE); 
if (AM.isMusicActive()) {
    //how do I pause whatever music player is active?       
}

Точно так же, если музыкальный проигрыватель открыт и поставлен на паузу, как его воспроизвести? Я изучил класс MediaPlayer, но я не уверен, как использовать его с AudioManager (или даже хочу ли я). Пока я задаю вопросы, есть ли разрешения манифеста, о которых мне нужно беспокоиться?

Спасибо ребята!


person JDS    schedule 13.06.2011    source источник
comment
попробовал это безуспешно. final Intent playButtonIntent = new Intent( Intent.ACTION_MEDIA_BUTTON); playButtonIntent.putExtra(Intent.EXTRA_KEY_EVENT, KeyEvent.KEYCODE_MEDIA_PLAY); context.sendBroadcast (playButtonIntent);   -  person Archimedes Trajano    schedule 21.02.2012


Ответы (2)


2) если он поставлен на паузу, воспроизвести его, если он воспроизводится, поставить его на паузу..?

Для этого нет API. Вы можете запросить фокус звука, если вам нужно временно взять на себя воспроизведение звука (например, чтобы воспроизвести мелодию звонка, связанную с будильником).

Точно так же, если музыкальный проигрыватель открыт и поставлен на паузу, как его воспроизвести?

Вы не знаете.

Я изучил класс MediaPlayer, но я не уверен, как использовать его с AudioManager (или даже хочу ли я).

MediaPlayer предназначен для воспроизведения мультимедиа в вашем собственном приложении.

person CommonsWare    schedule 13.06.2011
comment
Вы хотите сказать, что никто не может использовать AudioManager для воспроизведения песни в своем приложении и должен использовать MediaPlayer, верно? - person berserk; 14.01.2014
comment
@berserk: AudioManager не используется для воспроизведения песни. - person CommonsWare; 14.01.2014
comment
@CommonsWare - как мне получить доступ к медиаплееру (или текущему запущенному экземпляру медиаплеера) в том же условии, что и выше, внутри службы, сэр ?? - person Rat-a-tat-a-tat Ratatouille; 14.03.2014

Таскер это делает. Хотя бы приостановить воспроизведение. Не похоже, что он может начать это снова.

person Sarel Botha    schedule 20.09.2011