继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Android开发笔记——判断App是否运行、前台、后台

Cats萌萌
关注TA
已关注
手记 275
粉丝 50
获赞 304

1.判断是否运行

<uses-permission android:name="android.permission.GET_TASKS" />
static boolean isAppRunning(Context context) {
    ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
    List<ActivityManager.RunningTaskInfo> list = null;
    if (activityManager != null) {
        list = activityManager.getRunningTasks(100);
    }
    if (list == null || list.size() <= 0) {
        return false;
    }
    for (ActivityManager.RunningTaskInfo info : list) {
        if (info.baseActivity.getPackageName().equals(context.getPackageName())) {
            return true;
        }
    }
    return false;
}

2.判断是否在前台

private static boolean isAppForeground(Context context) {
    if (context != null) {
        ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
        List<ActivityManager.RunningAppProcessInfo> processes;
        if (activityManager != null) {
            processes = activityManager.getRunningAppProcesses();
        } else {
            return false;
        }
        for (ActivityManager.RunningAppProcessInfo processInfo : processes) {
            if (processInfo.processName.equals(context.getPackageName())) {
                MLog.i(FaceDetectionApp.TAG, "processInfo.importance = " + processInfo.importance);
                if (processInfo.importance == ActivityManager.RunningAppProcessInfo.IMPORTANCE_FOREGROUND) {
                    return true;
                }
            }
        }
    }
    return false;
}

3.判断是否在后台

通过1和2 可以判断后台

原文链接:http://www.apkbus.com/blog-184446-78089.html

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP