我是android新手,我广泛搜索过这个。任何帮助将不胜感激:)我要求一个应用程序执行以下操作:
作为侦听音量键(UP / Down)的服务在后台运行的应用程序。在此事件中,活动将显示在前台。
[我可以从一个Activity中执行此操作,但是活动必须在前台,并且只有在我按下音量按钮后才能进行祝酒。]
请帮忙!!!
您可以创建一个侦听android.intent.action.MEDIA_BUTTON
的BroadcastReceiver并注册一个intent过滤器来监听它:
<receiver android:name=".RemoteControlReceiver">
<intent-filter>
<action android:name="android.intent.action.MEDIA_BUTTON" />
</intent-filter>
</receiver>
然后在你的接收器中你处理变化:
public class RemoteControlReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if (Intent.ACTION_MEDIA_BUTTON.equals(intent.getAction())) {
KeyEvent event = (KeyEvent)intent.getParcelableExtra(Intent.EXTRA_KEY_EVENT);
if (KeyEvent.KEYCODE_VOLUME_DOWN == event.getKeyCode()) {
// Handle key press.
}
}
}
}
请查看https://developer.android.com/training/managing-audio/volume-playback.html获取更多信息(此代码来自那里)
编辑:修复KeyEvent键码常量