android 如何判断程序是否在前台运行

来源:互联网 发布:java框架 与 .net区别 编辑:程序博客网 时间:2024/05/16 10:53
  1. protected static boolean isTopActivity(Activity activity){
            String packageName = "xxxxx";
            ActivityManager activityManager = (ActivityManager) activity.getSystemService(Context.ACTIVITY_SERVICE);
            List<RunningTaskInfo>  tasksInfo = activityManager.getRunningTasks(1);  
            if(tasksInfo.size() > 0){  
                System.out.println("---------------包名-----------"+tasksInfo.get(0).topActivity.getPackageName());
                //应用程序位于堆栈的顶层  
                if(packageName.equals(tasksInfo.get(0).topActivity.getPackageName())){  
                    return true;  
                }  
            }  
            return false;
        }
  2. 需要添加android.permission.GET_TASKS权限