Android 4 2 2在應用中截獲home鍵

2021-06-22 10:29:38 字數 1357 閱讀 5257

現在通用的截獲home的方法在4.0.3、4.0.4、4.2.2中就不行了,下面是我試過一種在4.2.2中可行,但在4.0.4中確不行的方法,希望能幫助大家!

經在4.2.2.中測試,僅依靠以下兩句,即可在應用中對home鍵進行遮蔽:

定義:private static final int flag_homekey_dispatched = 0x80000000;

在activity的oncreate中增加一句:

this.getwindow().setflags(flag_homekey_dispatched, flag_homekey_dispatched);

private static final int flag_homekey_dispatched = 0x80000000;

//是否截獲home:true-->截獲,false-->不截獲

private boolean disablehomeflag = true;

在oncreate設定,此時home被攔截:

this.getwindow().setflags(flag_homekey_dispatched, flag_homekey_dispatched);

如果需要判斷是否取消home的截獲,要在onkeydown中做:

public boolean onkeydown(int keycode, keyevent event)

break

default:

break;

}return super.onkeydown(keycode, event);

}如果想要彈個提示框給使用者,確定是否執行home,可以在onkeyup中做處理:

public boolean onkeyup (int keycode, keyevent event)

return super.onkeyup(keycode, event);

}1、確定要執行home:

this.getwindow().clearflags(flag_homekey_dispatched);//清除flag,取消對home的截獲

//執行home

intent intent= new intent(intent.action_main);

intent.setflags(intent.flag_activity_new_task); 

intent.addcategory(intent.category_home);

startactivity(intent);

2、取消執行home

不需要做什麼操作,home已經被截獲了。

Android 4 2 2 檔案系統目錄分析

目錄 最近公司要整android內部培訓,分配給我寫個培訓文件,這裡記錄如下 這裡補充下 android 執行時的檔案系統結構,同樣,資料網上有很多,只是簡單介紹我常涉及到的 個人觀點,僅供參考 各個廠商平台可能會有出入 這裡單以我這邊 mstar 的平台以 代表檔案系統的根目錄.jscese 20...

JSON在android中應用

android裡面許可權控制的比較嚴,一般的應用當需要使用系統或者root許可權是,比較麻煩,所以編寫乙個root service用來處理root許可權請求,通過socket通訊 cpp view plain copy print?標準標頭檔案放在前面,否則有些函式定義會被覆蓋掉 include i...

多執行緒在Android中應用

asynctask 如何使用?asynctask原理及不足 asynctask不足 asynctask記憶體洩漏問題 如何取消asynctask?sp是程序同步的嗎?有什麼方法做到同步?多程序是支援的但是大量同時讀寫操作也會存在問題,談談多執行緒在android中的使用 如何防止執行緒的記憶體洩漏?...