Android下得到Home键按下的消息
在Android下,并不能通过onKeyDown这样的事件来截获Home键的消息,其原因在Android的文档中已经明确的说过了
翻译就不做了,总之就是App无法截获Home键的事件(曾经有高人在2.3以下的系统中,使用偏门方法来截获Home,但是在4.0以后已经失效了,故在此不提)
那么,如何才能得到Home键按下的消息呢,办法还是有的,在此需要说明的是,由于Home键的特殊性,它的逻辑在framework内被处理,因此无法 做到截获/屏蔽Home键,而只能得到它的消息,但是在得到消息后,如果要把已经退到后台的app再启动起来,也并非不能(界面会闪一下)
以下代码用于捕捉到Home键的按下消息:
同时,我们也需要将这个receiver注册到程序中,以便使它生效
这样,在上述两个TODO处,即可添加自己的代码,需要注意的是,在4.0以后,home键可能有两种reason,分别是原本的Home与显示最近的应用,在receiver中,通过判断reason字符串,可以分别处理。
时间: 2024-10-02 07:20:08