最近帮朋友抢手机的时候看到那些个经销商居然卖起耳机上的按键了,比如小米公司推出的:米健,还有360也来了:360智键
仔细一看跟耳机上的通话按键有点像,研究了一番,原理的利用广播的方式发送指令。
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
import android.view.KeyEvent;
public class MediaButtonReceiver extends BroadcastReceiver {
private static String TAG = "MediaButtonReceiver";
@Override
public void onReceive(Context context, Intent intent) {
// 获得Action
String intentAction = intent.getAction();
// 获得KeyEvent对象
KeyEvent keyEvent = (KeyEvent) intent.getParcelableExtra(Intent.EXTRA_KEY_EVENT);
if (Intent.ACTION_MEDIA_BUTTON.equals(intentAction)) {
// 获得按键字节码
int keyCode = keyEvent.getKeyCode();
// 按下 / 松开 按钮
int keyAction = keyEvent.getAction();
// 获得事件的时间
long downtime = keyEvent.getEventTime();
//do something
}
}
}