安卓(Android) 怎么判断应用程序是否在前台

2019年10月17日22:12:54安卓(Android) 怎么判断应用程序是否在前台已关闭评论 347 752字阅读2分30秒

1.简介

安卓(Android) 怎么判断应用程序是否在前台?——请看下文。

2.示例代码

/**
 * 版权所有 编程十万个怎么办(www.tah1986.com)
 */


import android.app.ActivityManager;
import android.content.ComponentName;
import android.content.Context;

import java.util.List;

public class Main {

    public static boolean isAppOnForeground(Context context) {
        return !isApplicationBroughtToBackground(context);
    }

    public static boolean isApplicationBroughtToBackground(
            final Context context) {
        try {
            ActivityManager am = (ActivityManager) context
                    .getSystemService(Context.ACTIVITY_SERVICE);
            List<ActivityManager.RunningTaskInfo> tasks = am
                    .getRunningTasks(1);
            if (!tasks.isEmpty()) {
                ComponentName topActivity = tasks.get(0).topActivity;
                if (!topActivity.getPackageName().equals(
                        context.getPackageName())) {
                    return true;
                }
            }
        } catch (Exception ex) {
            ex.printStackTrace();
        }
        return false;
    }
}

 
编程十万个怎么办