最近有一個(gè)類似鎖屏程序的需求棕硫,主要技術(shù)難點(diǎn)是屏蔽home鍵返回主界面髓涯,查找很多資料都沒能解決問題,核心問題是application無法攔截home鍵返回事件哈扮,給出的解決辦法大多都是要求修改系統(tǒng)內(nèi)核代碼复凳,在自己快要放棄的時(shí)候,看到很多鎖屏軟件都實(shí)現(xiàn)了這一功能灶泵,在網(wǎng)上苦苦搜帖育八,終于找到了解決辦法,現(xiàn)將方法總結(jié)如下:
1赦邻、back
back按鍵的屏蔽可以通過重寫onKeyDown方法攔截髓棋,這也是最容易實(shí)現(xiàn)的。
2惶洲、resentApp(摘自:http://www.cnblogs.com/hitnoah/p/5365336.html)
Step 1
Add this permission to themanifest.xmlfile
Step 2
Put this code in anyActivityon which you want to?block/disable the recent apps button
@OverrideprotectedvoidonPause(){super.onPause();ActivityManageractivityManager=(ActivityManager)getApplicationContext().getSystemService(Context.ACTIVITY_SERVICE);activityManager.moveTaskToFront(getTaskId(),0);}
3按声、home(摘自:http://www.cnblogs.com/u3shadow/p/4639648.html)
解決方法只有這么經(jīng)典了,我也基于上述帖子中給出的源碼修改成一個(gè)簡單易懂的demo分享給大家(https://github.com/justdorfun/ScreenLockerDemobyFrank.git)