码迷,mamicode.com
首页 > 移动开发 > 详细

android5.0以上对于APP_SWITCH和HOME键的处理

时间:2016-05-17 20:00:30      阅读:275      评论:0      收藏:0      [点我收藏+]

标签:android5.0以上home键和app_switch键处理

在android5.0项目开发遇到需要捕获HOME键的情况,经过查找,实现函数如下:

在framework/base/services/core/java/com/android/server/policy/PhoneWindowManager.java中添加如下函数:

    private boolean getTopStackActivity(String fullClassName){

        ActivityManager am = (ActivityManager)mContext.getSystemService(Context.ACTIVITY_SERVICE);

        RunningTaskInfo info = am.getRunningTasks(1).get(0);

        if(info == null || info.topActivity == null){

            Log.e(TAG, "Top activity is null, error");

            return false;

        }

        if(fullClassName.equals(info.topActivity.getClassName())){

            Log.d(TAG, "Top Activity:"+info.topActivity.getClassName());

            return true;

        }

        return false;

    }

  1. HOME键处理:

    在 interceptKeyBeforeDispatching函数的if(keyCode == KeyEvent.KEYCODE_HOME)中添加如上函数即可在应用层捕获HOME键。

  2. APP_SWITCH键处理:

    在interceptKeyBeforeDispatching函数的else if(keyCode == KeyEvent.KEYCODE_MENU)下的if(keyCode == KeyEvent.KEYCODE_APP_SWITCH)中添加如上函数即可在应用层捕获APP_SWITCH键。

本文出自 “智能改变生活” 博客,请务必保留此出处http://restlessheart.blog.51cto.com/3831429/1774334

android5.0以上对于APP_SWITCH和HOME键的处理

标签:android5.0以上home键和app_switch键处理

原文地址:http://restlessheart.blog.51cto.com/3831429/1774334

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!