android home键监听
来源:互联网 发布:左轮吉他淘宝网 编辑:程序博客网 时间:2024/06/10 03:27
最近在做一个关于人证比对的项目,其中用到了定制的android设备,如下图:
这是一个测试版本的设备,其中右边的是一个定制的android设备,左边的是身份证读卡器。该应用主要应用在酒店,旅馆,网吧等一些服务性行业用作于判断真人与身份证的识别度的问题。其中在实际使用中需要一直运行,所以在开发的过程中需要操作者点击home键的操作,具体有以下三种方式:
一:通过onSaveInstanceState方法
该方法的官网介绍如下:
看解释的意思是当前的activity结束后(任何情况下导致的activity调用finish)都会调用该方法进行保存操作,但是用于监听home键的监听有一点碰巧的嫌疑,所以亲试后建议不使用该方法。
二:通过onUserLeaveHint方法
这个方法在官方的文档中的解释是可以用作home监听,强调的是只用户选择的结果,点击home键也是用户操作。但是在系统的一些操作就是不被调用的,比如说:来电。所以调用情况如下:
* 用户手动离开当前activity,会调用该方法,* 比如用户主动切换任务,短按home进入桌面等。* 系统自动切换activity不会调用此方法,如来电,灭屏等。三:注册广播形式
该方法就不多说了,直接上代码
//home监听广播this.registerReceiver(mHomeReceiver, new IntentFilter( Intent.ACTION_CLOSE_SYSTEM_DIALOGS));创建一个广播
/** * home键监听 */private BroadcastReceiver mHomeReceiver = new BroadcastReceiver() { String SYSTEM_REASON = "reason"; String SYSTEM_HOME_KEY = "homekey"; String SYSTEM_HOME_KEY_LONG = "recentapps"; @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); if(action.equals(intent.ACTION_CLOSE_SYSTEM_DIALOGS)){ String reason = intent.getStringExtra(SYSTEM_REASON); if (TextUtils.equals(reason, SYSTEM_HOME_KEY)) { //表示按了home键,程序到了后台 android.os.Process.killProcess(android.os.Process.myPid()); System.exit(0); }else if(TextUtils.equals(reason, SYSTEM_HOME_KEY_LONG)){ //表示长按home键,显示最近使用的程序列表 android.os.Process.killProcess(android.os.Process.myPid()); System.exit(0); } } }};
0 0
- android监听home键
- android 监听HOME键
- Android 监听Home键
- android Home键监听
- Android 监听Home键
- Android 监听home键
- android HOME键监听
- android home键监听
- Android Home键监听
- android监听home键
- android监听Home键
- Android Home键监听
- android home键监听
- android监听Home键
- android home键监听
- android监听home键
- Android 监听Home键
- android Home键监听
- 演示Runtime
- Centos7 开放端口
- androidM app 运行权限问题
- 关于接口对接的小记录
- 自定义控件三部曲之绘图篇(十)——Paint之setXfermode(一)
- android home键监听
- VS 2013驱动开发 + Windbg + VM双机调试(亲测+详解)
- uboot命令
- JS getComputedStyle() 与 currentStyle
- go 使用protobuffer proto3
- 浅谈时钟
- AndFix热修复 —— 实战与源码解析
- ,Java阵营继续为理想而战
- hihocoder#1055 : 刷油漆 算法详解以及java源码实现