`
学不止
  • 浏览: 238327 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

android4.0以上监听home(屏蔽home或做其他操作)

阅读更多

android 4.0以后无法通过更改页面的类型来监听home键了。如果不改源码的情况下,下面的方式可以很好的监听到home键(前提是手机打系统日志,有些手机日志被关闭了(如华为荣耀)就无法监听了)。

 protected void onResume()
    {
        super.onResume();
        isTesting=true;
        new CatchLogThread().start();
    }
class CatchLogThread extends Thread {  
     @Override  
      public void run() {  
          Process mLogcatProc = null;  
          BufferedReader reader = null;  
           String line;  
           while (isTesting) {  
               try {  
                 // 获取logcat日志信息   
                   mLogcatProc = Runtime.getRuntime().exec(new String[] { "logcat", "ActivityManager:I *:S" });  
                   reader = new BufferedReader(new InputStreamReader(mLogcatProc.getInputStream()),2*1024);  
                   while ((line = reader.readLine()) != null) {  
                       if (line.indexOf("android.intent.category.HOME") > 0) {  
                           isTesting = false;  
                           System.out.println("DDDDDDDDDDDDDDDDDDDDDDDDD");
                           handler.sendMessage(handler.obtainMessage());   
                         Runtime.getRuntime().exec("logcat -c");//删除日志   
                          break;  
                      }   
                  }  
               } catch (Exception e) {  
                   e.printStackTrace();  
               }  
           }  
      }  
    };  
Handler handler = new Handler() {  
       public void handleMessage(android.os.Message msg) {
           
           startActivity(new Intent(MainActivity.this,MainActivity.class));
           Toast.makeText(MainActivity.this, "I Have Home is pressed!!!!!",Toast.LENGTH_LONG).show();
           System.out.println("Home is Pressed+++++++++++++++++");
        };   
   };  

 

以上是全部精华代码。要对home键按下后做操作可以在handler中进行。希望可以帮助到一些冥思苦想而不得解的人。

最后记得在AndroidManifest.xml中加读取日志权限:

<uses-permission android:name="android.permission.READ_LOGS"></uses-permission>

1
1
分享到:
评论
2 楼 q316085319 2015-03-11  

可以参考一下该文章:http://www.glmei.cn/?p=30354
1 楼 poplarni 2012-10-19  
请问想 屏蔽home键怎么做阿 ,谢谢哦 

相关推荐

    android 4.0以上屏蔽Home键

    然而,在某些特殊的应用场景下,开发者可能需要屏蔽或禁用Home键的功能,比如在游戏或者全屏应用中,为了提供更好的用户体验或者防止意外退出。在Android 4.0(API级别14)及以上版本中,虽然系统不再支持直接禁用...

    屏蔽android4.0以上home按键。

    标题提到的"屏蔽android4.0以上home按键"是一个关于如何在Android 4.0及以上版本中阻止Home键功能的技术问题。 首先,我们需要了解Android系统的权限和API等级。Android 4.0(API级别14)引入了一些新特性,而...

    android 4.0 上的HOME 键捕获

    ### Android 4.0 (ICS)上的Home键捕获实现详解 #### 背景介绍 在Android开发中,为了提升用户体验或者实现某些特定的功能需求,开发者有时会希望能够捕获到用户按下Home键的行为。例如,在一个应用内,开发者可能...

    android4.0版本以上对Home键从底层拦截操作

    在Android 4.0(Ice Cream Sandwich)及更高版本中,开发者可以实现对Home键的底层监听和拦截操作,这是为了提供更丰富的用户体验和应用程序控制能力。本文将深入探讨这一功能,包括其实现原理、代码解析以及实际...

    Android4.0以上外接鼠标-左键单击-右键捕获单击事件Demo

    Android4.0以上外接鼠标-左键单击-右键单击-捕获事件Demo; 网上没有这样的Demo,例子非常简单,节约下载者查询相关资料的时间。 如果用在ListView里面,只要在自定义的Adapter里面设置该监听事件;并在Activity的...

    android4.0 日历源码

    以上是对"android4.0 日历源码Calendar"的关键知识点的概述。通过深入研究这些内容,开发者可以更好地理解和定制Android日历功能,提升用户体验。同时,对源码的熟悉也有助于解决系统级别的问题和进行定制化开发。

    Android 4.0 网络编程详解 王家林.pdf

    在讨论Android 4.0网络编程的知识点之前,需要了解Android 4.0(代号Ice Cream Sandwich,简称ICS)是Google在2011年发布的Android操作系统版本。它集成了之前的版本特色,并且首次尝试统一了平板和手机平台的用户...

    Android 4.0 MusicPlayer 源码

    在Android 4.0(Ice Cream Sandwich)系统中,MusicPlayer是系统内置的音乐播放应用,它提供了丰富的功能,如播放本地音乐库、播放列表管理、音效设置等。源码分析可以帮助我们深入理解Android多媒体处理、服务、...

    Android4.0网络编程详解.pdf

    以上便是关于Android 4.0网络编程的知识点。对于任何使用Android 4.0进行应用开发的人来说,理解和掌握这些知识点是必不可少的,它们可以确保开发的应用能够有效地执行网络操作,并提供良好的用户体验。

    Android4.0扩展库实现左右滑动效果(一)

    在Android应用开发中,左右滑动效果是一种常见的交互方式,特别是在列表或页面切换时。本文将探讨如何在Android 4.0(API级别14)中实现这种效果,主要涉及自定义视图和触摸事件处理。 首先,我们需要理解Android中...

    android 4.0 launcher分析

    《Android 4.0 Launcher深度解析》 在Android操作系统中,Launcher,即启动器,扮演着用户界面的核心角色,它是用户与设备交互的首要入口。本文将深入剖析Android 4.0版本的Launcher,理解其背后的运行机制和设计...

    android监听home按键实例

    然而,由于Android系统的安全性和权限管理,直接监听Home键并不像监听其他按键那样简单。本实例将介绍如何通过`Intent.ACTION_CLOSE_SYSTEM_DIALOGS`广播来间接实现Home键监听。 首先,我们需要理解`Intent.ACTION_...

    Gallery3dD源代码(android4.0版原生)

    《Android 4.0 Gallery3D源代码解析与探索》 在Android系统中,Gallery3D是一款用于展示图片和视频的高效应用,特别是在Android 4.0(Ice Cream Sandwich,简称ICS)版本中,Gallery3D以其流畅的用户体验和优秀的...

    Android4.0开发学习之ImageButton

    在Android 4.0中,`ImageButton`还支持触摸反馈效果,可以通过设置`android:tint`属性或使用`android:foreground`属性来改变图像的颜色或者添加前景效果。同时,你可以利用`android:scaleType`调整图像在按钮中的...

    Android 4.0网络编程详解

    《Android 4.0网络编程详解》一书深入探讨了在Android 4.0系统上进行网络编程的技术细节与实践方法。此版本的Android系统,即Ice Cream Sandwich(冰淇淋三明治),带来了许多网络功能上的改进和新特性,使得开发者...

    Android4.0.x Home键事件拦截监听的方法

    本篇文章将详细讲解如何在Android 4.0.x版本中实现Home键事件的拦截监听,并对比Android 2.3.x的实现方法。 首先,我们来看在Android 2.3.x版本中常见的Home键事件拦截方法。开发者通常会在`onAttachedToWindow()`...

    Android 4.0 Launcher2 源码 Eclipse版

    【Android 4.0 Launcher2 源码 Eclipse版】是一个专门为Android 4.0 (Ice Cream Sandwich)系统设计的启动器源代码,适合开发者深入理解Android系统的桌面启动器工作原理,以及进行自定义开发。这个源代码版本是为...

    Android 4.0 Launch源代码

    在Android操作系统的发展历程中,Android 4.0(代号Ice Cream Sandwich,简称ICS)是一个重要的里程碑,它为用户界面带来了重大改进,同时也对开发者提供了更多高级功能。其中,"Android 4.0 Launch"指的是启动器...

    Android 4.0 Launcher系统源码

    Android 4.0 Launcher系统源码是Android操作系统中桌面启动器的重要组成部分,它负责管理主屏幕、应用快捷方式、小部件以及桌面布局等用户界面。深入理解这部分源码对于开发者来说,有助于定制个性化启动器或者优化...

    android 免Root屏蔽home键,通过AccessibilityService,屏蔽按键。打王者防误触

    为了防止这种情况,开发者有时会寻求方法来屏蔽或禁用Home键。在Android中,可以通过`AccessibilityService`来实现这一功能。 `AccessibilityService`是Android提供的一种特殊服务,主要用于帮助残障人士或有特殊...

Global site tag (gtag.js) - Google Analytics