Android利用广播监听按下HOME和RECENT_APPS键
发布日期:2021-06-30 11:24:30 浏览次数:3 分类:技术文章

本文共 2054 字,大约阅读时间需要 6 分钟。

MainActivity如下:

package cn.testhomekey;import android.os.Bundle;import android.app.Activity;import android.content.Intent;import android.content.IntentFilter;/** * Demo描述: * 利用广播监听设备的HOME和RECENT_APPS键被按下 *  * 参考资料: * http://blog.csdn.net/imyfriend/article/details/8293399 * Thank you very much */public class MainActivity extends Activity {    private HomeKeyBroadcastReceiver mHomeKeyBroadcastReceiver;	@Override	protected void onCreate(Bundle savedInstanceState) {		super.onCreate(savedInstanceState);		setContentView(R.layout.main);	}    @Override    protected void onStart() {    	super.onStart();    	mHomeKeyBroadcastReceiver=new HomeKeyBroadcastReceiver();    	IntentFilter intentFilter=new IntentFilter(Intent.ACTION_CLOSE_SYSTEM_DIALOGS);    	this.registerReceiver(mHomeKeyBroadcastReceiver,intentFilter);    }	@Override	protected void onDestroy() {		if (mHomeKeyBroadcastReceiver!=null) {			this.unregisterReceiver(mHomeKeyBroadcastReceiver);		}		super.onDestroy();	}}

HomeKeyBroadcastReceiver如下:

package cn.testhomekey;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;public class HomeKeyBroadcastReceiver extends BroadcastReceiver {	private final String SYSTEM_REASON = "reason";	//Home键	private final String SYSTEM_HOME_KEY = "homekey";	//最近使用的应用键	private final String SYSTEM_RECENT_APPS = "recentapps";	@Override	public void onReceive(Context context, Intent intent) {		String action = intent.getAction();		if (action.equals(Intent.ACTION_CLOSE_SYSTEM_DIALOGS)) {			String systemReason = intent.getStringExtra(SYSTEM_REASON);			if (systemReason != null) {				if (systemReason.equals(SYSTEM_HOME_KEY)) {					System.out.println("按下HOME键");				} else if (systemReason.equals(SYSTEM_RECENT_APPS)) {					System.out.println("按下RECENT_APPS键");				}			}		}	}}

 

Manifest.xml如下:

 

main.xml如下:

 

转载地址:https://it9527.blog.csdn.net/article/details/9903693 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:服务(Service)全解析(六)--避免被系统回收的Service
下一篇:Android利用广播监听设备安装和卸载应用程序

发表评论

最新留言

哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年04月29日 09时52分39秒