private final BroadcastReceiver homeKeyEventReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
final String SYSTEM_REASON = "reason";
final String SYSTEM_HOME_KEY = "homekey";//home key
//static final String SYSTEM_RECENT_APPS = "recentapps";//long home key
String action = intent.getAction();
if (action.equals(Intent.ACTION_CLOSE_SYSTEM_DIALOGS)) {
String reason = intent.getStringExtra(SYSTEM_REASON);
if (reason != null) {
if (reason.equals(SYSTEM_HOME_KEY) && mState == State.WORKSPACE) {
// home key
showAllApps(true);
}
/*else if (reason.equals(SYSTEM_RECENT_APPS)) {
// long home key
} */
}
}
}
};
根据网上的方法弄成这样,我的目的是在桌面时单击home键进入应用列表中,但现在好像会在短时间内接收到两次点击home的事件,就是进去应用列表之后马上又会回到桌面,或者在应用列表点击时回到桌面马上又会到应用列表。 怀疑是不是home键 down 和 up都会发一次广播,求解!!!