我是Android编程的新手,想要执行以下操作:
我创建了一个后台服务。当我正在听音乐(例如三星设备上的标准音乐播放器)并且该服务处于活动状态时,我希望该服务能够收听耳机按钮。这意味着:
Q1。什么是实施此行为的最佳方法?甚至可以在服务中进行吗?
Q2。手机硬件按钮+/-和耳机按钮+/-?
之间有区别吗?提前致谢。
修改
在我的Service.java中,我有onStartCommand-Method,我想插入监听器:
public int onStartCommand(Intent intent, int flags, int startId){
Toast.makeText(getApplicationContext(), "Volume control active!", Toast.LENGTH_SHORT).show();
//Listen for the Buttons here
//someListener(blabla);
return START_STICKY;
}
在上面的方法之后,我按照复制粘贴插入了以下方法(在Stackoverflow上找到)
public boolean dispatchKeyEvent(KeyEvent event) {
int action = event.getAction();
int keyCode = event.getKeyCode();
switch (keyCode) {
case KeyEvent.KEYCODE_VOLUME_UP:
if (action == KeyEvent.ACTION_DOWN) {
//TODO
}
return true;
case KeyEvent.KEYCODE_VOLUME_DOWN:
if (action == KeyEvent.ACTION_DOWN) {
//TODO
}
return true;
default:
return super.dispatchKeyEvent(event);
}
}
我无法测试代码,因为Eclipse说,在默认情况下: "方法dispatchKeyEvent(KeyEvent)未定义类型Service"
有什么建议吗?
由于