您的位置:首页 > 移动开发

Android 判断app是否在前台还是在后台运行

2017-04-23 23:40 507 查看
原文地址:http://blog.csdn.net/u013339223/article/details/43818113#

Android 判断app是否在前台还是在后台运行,直接看代码,可直接使用。

[java] view
plain copy

public static boolean isBackground(Context context) {  

        ActivityManager activityManager = (ActivityManager) context  

                .getSystemService(Context.ACTIVITY_SERVICE);  

        List<RunningAppProcessInfo> appProcesses = activityManager  

                .getRunningAppProcesses();  

        for (RunningAppProcessInfo appProcess : appProcesses) {  

            if (appProcess.processName.equals(context.getPackageName())) {  

                /* 

                BACKGROUND=400 EMPTY=500 FOREGROUND=100 

                GONE=1000 PERCEPTIBLE=130 SERVICE=300 ISIBLE=200 

                 */  

                Log.i(context.getPackageName(), "此appimportace ="  

                        + appProcess.importance  

                        + ",context.getClass().getName()="  

                        + context.getClass().getName());  

                if (appProcess.importance != RunningAppProcessInfo.IMPORTANCE_FOREGROUND) {  

                    Log.i(context.getPackageName(), "处于后台"  

                            + appProcess.processName);  

                    return true;  

                } else {  

                    Log.i(context.getPackageName(), "处于前台"  

                            + appProcess.processName);  

                    return false;  

                }  

            }  

        }  

        return false;  

    }  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: