`
syab11
  • 浏览: 201381 次
  • 性别: Icon_minigender_1
  • 来自: SH
社区版块
存档分类
最新评论

捕获home事件

 
阅读更多

android中得home事件app是不能捕获的,但是我们可以通过如下方法捕获它

 

	/**
	 * home键的捕获,需要重写onAttachedToWindow并设置type
	 */
	 private boolean catchHome=true;
    @Override
      public void onAttachedToWindow() {
    	if(catchHome)
            this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
    	super.onAttachedToWindow();
    }

 

然后在keydown方法中

	public boolean onKeyDown(int keyCode,KeyEvent event){
		Log.d(this, "**************keycode home", "onKeyDown");
		if(keyCode==KeyEvent.KEYCODE_HOME){
						Log.d(this, "**************keycode home", "KEYCODE_HOME");
		}
		return super.onKeyDown(keyCode, event);
	}

 

但是捕获后会有个问题:app将不会在执行系统的home事件。

有大牛知道如何解决这个问题的话望告知

分享到:
评论

相关推荐

    Android 捕获home键

    然而,出于某些特殊需求,开发者可能希望捕获Home键的按下事件,比如实现后台服务持续运行、自定义启动器或者增强用户体验。下面将详细阐述如何在Android应用中捕获Home键,并探讨相关知识点。 首先,我们要了解...

    Android高级应用源码-捕获Home键.zip

    这个"Android高级应用源码-捕获Home键"的项目,旨在提供一种方法来拦截和处理Home键事件,以实现更复杂的交互逻辑。 捕获Home键的关键在于重写`Activity`的`onKeyDown()`或`onBackPressed()`方法。在`onKeyDown()`...

    android 4.0 上的HOME 键捕获

    当这样的对话框显示时,它可以捕获Home键事件,并通过设置监听器来处理这些事件。 #### 使用对话框捕获Home键 为了实现Home键的捕获,可以创建一个`AlertDialog`并设置其类型为`WindowManager.LayoutParams.TYPE_...

    3.如何捕获键盘Home等虚键?(Visual C++编程 源代码)

    3.如何捕获键盘Home等虚键?(Visual C++编程 源代码)3.如何捕获键盘Home等虚键?(Visual C++编程 源代码)3.如何捕获键盘Home等虚键?(Visual C++编程 源代码)3.如何捕获键盘Home等虚键?(Visual C++编程 源...

    安卓键盘输入相关-捕获Home键.rar

    然而,出于某些特定的开发需求,开发者可能需要捕获Home键的按下事件,以便执行自定义操作或者阻止系统默认的行为。这个压缩包"安卓键盘输入相关-捕获Home键.rar"提供的资源,就是关于如何在Android应用中实现Home键...

    AndroidHome键

    为了捕获Home键事件,我们不能直接重写Home键的监听,因为Android系统不允许这样做以保持用户体验的一致性。但是,可以通过注册BroadcastReceiver来间接实现。BroadcastReceiver可以监听到系统发送的各种广播,包括...

    捕获Home键

    当程序第一次启动时,点击home键回到手机的主界面, 再点击程序的图标,程序会重新启动(程序并没有结束),而不是回到点击home键之前的界面(第... 通过间接的办法解决了,就是第一次点击Home键,捕获Home键的操作,将程序结束掉

    源码 HOME键 捕获Home键.zip

    免责声明:资料部分来源于合法的互联网渠道收集和整理,部分自己学习积累成果,供大家学习参考与交流。收取的费用仅用于收集和整理资料耗费时间的酬劳。 本人尊重原创作者或出版方,资料版权归原作者或出版方所有,...

    Android 屏蔽和捕获Home键的示例代码

    在Android API Level 5及以上版本,我们可以利用`onAttachedToWindow()`方法来尝试改变窗口类型,从而捕获Home键事件。在`onAttachedToWindow()`中,我们将窗口类型设置为`WindowManager.LayoutParams.TYPE_KEYGUARD...

    Android拦截HOME按键

    然后在Activity中,我们可以重写onKeyDown()方法来捕获硬件按键事件,包括HOME键: ```java @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_HOME) { // ...

    Android_Home.rar_Home Home

    这些文件将展示如何捕获和处理Home键事件,通常会涉及到Android的Activity生命周期方法,如`onKeyDown()`或`onBackPressed()`。 4. **权限和API级别**: 使用自定义Home键处理可能需要特定的Android权限,比如使用...

    VC++.net捕获键盘Home等虚键

    捕获Home键等虚键的步骤如下: 1. **重载消息映射函数**:在你的C++类中,你需要继承自MFC的CWnd或CDialog类,并重载`OnKeyDown`、`OnKeyUp`消息映射函数。这两个函数分别对应键盘按键的按下和释放事件。 ```cpp ...

    android 4.0以上屏蔽Home键

    另外,可以使用Activity的onKeyDown()和onKeyUp()方法来捕获并处理Home键的按下和释放事件。虽然不能直接阻止Home键的行为,但我们可以在检测到Home键按下时做一些处理,比如弹出对话框提示用户,或者执行其他操作。...

    Android编程实现Home键的屏蔽,捕获与修改方法

    开发过程中相信大家都曾有碰到因为不能捕获Home键而烦恼,现在终于有办法了,在Level5以上(包含)中,Activity类中有如下方法: public void onAttachedToWindow () Since: API Level 5 Called when the main window...

    HomeAssistant中默认lovelace媒体播放器卡的缩小版本

    同时,理解Home Assistant的事件系统也是关键,因为媒体播放的状态变化通常会触发相应的事件,而这些事件可以被其他Home Assistant组件捕获并作出反应。 总的来说,这个缩小版的媒体播放器卡是对Home Assistant用户...

    android 4.0以下屏蔽Home键

    为了阻止这个过程,我们需要重写onKeyDown()方法,捕获Home键的事件。 以下是一个简单的示例,展示了如何在Android 4.0以下的版本中屏蔽Home键: 1. 首先,在你的Activity中,重写onKeyDown()方法: ```java @...

    避免HOME键重复启动launcher

    1. **自定义Home键处理**:通过重写Activity的`onKeyDown()`或`onKeyLongPress()`方法,捕获并处理Home键事件。在这些方法中,你可以选择不执行默认的Home键行为,而是执行自己的逻辑,比如显示一个对话框提示用户或...

    Android Home键拦截

    标题“Android Home键拦截”所涉及的知识点就是如何在Android应用中捕获并控制Home键的事件,使它不执行默认行为,而是保持当前Activity处于前台。 首先,要实现Home键拦截,我们需要重写`onKeyDown()`方法。这个...

Global site tag (gtag.js) - Google Analytics