判斷應用是否處於前臺

private boolean isForeground() {
    ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
    List<ActivityManager.RunningAppProcessInfo> processes = activityManager.getRunningAppProcesses();
    
    if (processes == null || processes.isEmpty()) {
        return false;
    }
    
    for (ActivityManager.RunningAppProcessInfo info : processes) {
        if (info.processName.equals(getPackageName()) &&
                info.importance == ActivityManager.RunningAppProcessInfo.IMPORTANCE_FOREGROUND) {
            return true;
        }
    }
    return false;
}
相關文章
相關標籤/搜索