Android 卷更改侦听器?

Android 卷更改侦听器?,android,service,broadcastreceiver,media,volume,Android,Service,Broadcastreceiver,Media,Volume,有没有办法通过Android服务监听音量变化并做出反应 顺便问一句:谷歌音乐应用程序如何允许用户在后台播放音乐时控制媒体音量?请查看registerMediaButtonEventReceiver(ComponentName broadcastReceiver) 定义一个BroadcastReceiver,用于处理操作\媒体\按钮。接收到的意图包含一个额外字段,额外按键事件,其中包含导致广播的按键事件。您可以使用此按键事件获取按下的按键 编辑: 这只是一个示例代码。可能存在语法错误 // in

有没有办法通过Android服务监听音量变化并做出反应


顺便问一句:谷歌音乐应用程序如何允许用户在后台播放音乐时控制媒体音量?

请查看
registerMediaButtonEventReceiver(ComponentName broadcastReceiver)

定义一个
BroadcastReceiver
,用于处理
操作\媒体\按钮
。接收到的
意图
包含一个额外字段,
额外按键事件
,其中包含导致广播的按键事件。您可以使用此按键事件获取按下的按键


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

// 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()
onStop()

中注销接收器。您能举个例子吗?我已经添加了示例代码。但是其中有语法错误。还应检查动作键向下或向上。对于“开始”,这很好,请稍后添加。另外,不要忘记注销接收器,否则使用“媒体按钮”事件的其他应用程序可能会受到影响。@userSeven7s使用“音量摇杆”更改音量时,我没有收到任何意图,但我确实收到了耳机上的按钮。它是否也适用于音量摇杆?//应该放在简历中,我认为是RegisterMediaReceiver(mediaReceiver);