音量变化听众?

时间:2011-08-20 07:32:57

标签: android service broadcastreceiver media volume

有没有办法通过Android服务监听音量变化并对此作出反应?

顺便说一句:即使音乐在后台播放,Google音乐应用如何让用户控制媒体音量?

1 个答案:

答案 0 :(得分:12)

查看registerMediaButtonEventReceiver(ComponentName broadcastReceiver);

定义处理BroadcastReceiver的{​​{1}}。收到的ACTION_MEDIA_BUTTON包含一个额外字段intent,其中包含导致广播的关键事件。您可以使用此键事件来获取按下的键。


编辑:
这只是一个示例代码。可能存在语法错误。

EXTRA_KEY_EVENT

// in onCreate of activity registerMediaButtonEventReceiver(mediaReceiver ); // later somewhere in activity. MediaButton_Receiver mediaReceiver = new MediaButton_Receiver(); class MediaButton_Receiver implements BroadcastReceiver { void onReceive(Intent intent) { KeyEvent ke = (KeyEvent)intent.getExtra(Intent.EXTRA_KEY_EVENT); if (ke .getKeyCode() == KeyEvent.KEYCODE_VOLUME_DOWN) { } // Similarly other key codes ....... } } onPause()

取消注册接收者