欢迎来到我在这个论坛上的第一个问题。
我正在建立一个警报,通知SMS有关入室盗窃。
借助BroadcastReceiver(下面的源代码),我可以轻松地检测到按下并释放有线耳机上的PLAY / PAUSE键。但是,仅在短按并释放 PLAY / PAUSE按钮之后,BroadcastReceiver才会启动。
我需要立即检测何时仅仅按下或仅仅释放耳机键。按下和释放之间的时间可能会很长,例如几天。不幸的是,检测电话或蓝牙上的传感器(AT命令)电源中断的解决方案不起作用。 Android是4.0.4。
public class MediaButtonReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String intentAction = intent.getAction();
Log.i ("TAG_MEDIA", intentAction.toString() + " happended");
if (!Intent.ACTION_MEDIA_BUTTON.equals(intentAction)) {
Log.i ("TAG_MEDIA", "no media button information");
return;
}
KeyEvent event = (KeyEvent)intent.getParcelableExtra(Intent.EXTRA_KEY_EVENT);
if (event == null) {
Log.i ("TAG_MEDIA", "no keypress");
return;
}
Log.i ("TAG_MEDIA", "Yes keypress = " + event);
}
}