IntentFilter home_filter = new IntentFilter(Intent.ACTION_CLOSE_SYSTEM_DIALOGS);registerReceiver(new BroadcastReceiver() {    @Override    public void onReceive(Context context, Intent intent) {        if (intent.getAction().equals(Intent.ACTION_CLOSE_SYSTEM_DIALOGS))        {            String reason = intent.getStringExtra("reason");            if (reason != null)            {                if (reason.equals("homekey")) {                    Log.i(TAG,"homekey");                }else if(reason.equals("recentapps")){                    Log.i(TAG,"recentapps");                }            }        }    }},home_filter);
   
其实这个方法也并不是官方API提供的,而是其他热心网友发现的。否则你很难想到关闭系统对话框会和Home键发生关系。然而看到framework代码后,发现每次按Home键或者触发最近任务就会发送Intent.ACTION_CLOSE_SYSTEM_DIALOGS。 另外关机还有关闭对话框也会发送该广播。所以要获得reason字段才能知道,是何原因发送的广播。就
intent.getStringExtra("reason");官方也没解释。所以此方法也是一个讨巧的方法。一旦framework有改动,此方法不一定会再有效

更多相关文章

  1. 浅谈Java中Collections.sort对List排序的两种方法
  2. Python list sort方法的具体使用
  3. python list.sort()根据多个关键字排序的方法实现
  4. Android学习笔记(10)————Android的Listview详解1(ArrayAdapte
  5. android Gide加载webp图片方法
  6. Android(安卓)5中样式对话框
  7. Android(安卓)原生SQLite数据库操作实战
  8. Android(安卓)简易对话框
  9. android发送json并解析返回json

随机推荐

  1. Android(安卓)Logcat 直接输出JSON格式的
  2. 再看Android(安卓)屏幕切换引起的生命周
  3. pull解析
  4. Android(安卓)/ iOS 静态代码扫描工具调
  5. android开发之给LinearLayout增加点击效
  6. Android常用开源框架
  7. 利用Handler来更新android的UI
  8. Android(安卓)Android.mk 文件一点感悟
  9. Android夜间模式实现(系统自带)
  10. android 禁止viewpager预加载