Android 5.1 如何監聽使用者按了home鍵
阿新 • • 發佈:2019-02-19
private BroadcastReceiver mHomeKeyEventReceiver = new BroadcastReceiver() { String SYSTEM_REASON = "reason"; String SYSTEM_HOME_KEY = "homekey"; String SYSTEM_HOME_KEY_LONG = "recentapps"; @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); if (action.equals(Intent.ACTION_CLOSE_SYSTEM_DIALOGS)) { String reason = intent.getStringExtra(SYSTEM_REASON); if (TextUtils.equals(reason, SYSTEM_HOME_KEY)) { //表示按了home鍵,程式到了後臺 }else if(TextUtils.equals(reason, SYSTEM_HOME_KEY_LONG)){ //表示長按home鍵,顯示最近使用的程式列表 } } } };
註冊廣播接收器
registerReceiver(mHomeKeyEventReceiver, new IntentFilter(Intent.ACTION_CLOSE_SYSTEM_DIALOGS));
如果使用者按了home鍵,定義一個標記位,程式一定會經過onPause(),在這裡做邏輯判斷,如果是home鍵盤按下的標記,就重新開啟自己的Activity,即可.