package com.ifpdos.debugmenu.entity;

import android.app.Activity;
import android.app.Application;
import android.content.Context;
import android.os.Bundle;
import android.os.Handler;
import android.util.Log;
import java.util.Iterator;
import java.util.List;
import java.util.concurrent.CopyOnWriteArrayList;

/* JADX INFO: loaded from: classes.dex */
public class ForegroundCallbacks implements Application.ActivityLifecycleCallbacks {
    private static final long CHECK_DELAY = 600;
    private static ForegroundCallbacks instance;
    private Runnable check;
    private boolean foreground = false;
    private boolean paused = true;
    private Handler handler = new Handler();
    private List<Listener> listeners = new CopyOnWriteArrayList();

    public interface Listener {
        void onBecameBackground();

        void onBecameForeground();
    }

    public static ForegroundCallbacks get(Application application) {
        if (instance == null) {
            init(application);
        }
        return instance;
    }

    public static ForegroundCallbacks init(Application application) {
        if (instance == null) {
            ForegroundCallbacks foregroundCallbacks = new ForegroundCallbacks();
            instance = foregroundCallbacks;
            application.registerActivityLifecycleCallbacks(foregroundCallbacks);
        }
        return instance;
    }

    public void addListener(Listener listener) {
        this.listeners.add(listener);
    }

    public void clearListener() {
        this.listeners.clear();
    }

    public boolean isBackground() {
        return !this.foreground;
    }

    public boolean isForeground() {
        return this.foreground;
    }

    @Override // android.app.Application.ActivityLifecycleCallbacks
    public void onActivityCreated(Activity activity, Bundle bundle) {
    }

    @Override // android.app.Application.ActivityLifecycleCallbacks
    public void onActivityDestroyed(Activity activity) {
    }

    @Override // android.app.Application.ActivityLifecycleCallbacks
    public void onActivityPaused(Activity activity) {
        this.paused = true;
        Runnable runnable = this.check;
        if (runnable != null) {
            this.handler.removeCallbacks(runnable);
        }
        Handler handler = this.handler;
        Runnable runnable2 = new Runnable() { // from class: com.ifpdos.debugmenu.entity.ForegroundCallbacks.1
            @Override // java.lang.Runnable
            public void run() {
                if (ForegroundCallbacks.this.foreground && ForegroundCallbacks.this.paused) {
                    ForegroundCallbacks.this.foreground = false;
                    Iterator it = ForegroundCallbacks.this.listeners.iterator();
                    while (it.hasNext()) {
                        try {
                            ((Listener) it.next()).onBecameBackground();
                        } catch (Exception e2) {
                            Log.i("ForegroundCallbacks", e2.getMessage());
                        }
                    }
                }
            }
        };
        this.check = runnable2;
        handler.postDelayed(runnable2, CHECK_DELAY);
    }

    @Override // android.app.Application.ActivityLifecycleCallbacks
    public void onActivityResumed(Activity activity) {
        this.paused = false;
        boolean z = !this.foreground;
        this.foreground = true;
        Runnable runnable = this.check;
        if (runnable != null) {
            this.handler.removeCallbacks(runnable);
        }
        if (z) {
            Iterator<Listener> it = this.listeners.iterator();
            while (it.hasNext()) {
                try {
                    it.next().onBecameForeground();
                } catch (Exception e2) {
                    Log.i("ForegroundCallbacks", e2.getMessage());
                }
            }
        }
    }

    @Override // android.app.Application.ActivityLifecycleCallbacks
    public void onActivitySaveInstanceState(Activity activity, Bundle bundle) {
    }

    @Override // android.app.Application.ActivityLifecycleCallbacks
    public void onActivityStarted(Activity activity) {
    }

    @Override // android.app.Application.ActivityLifecycleCallbacks
    public void onActivityStopped(Activity activity) {
    }

    public void removeListener(Listener listener) {
        this.listeners.remove(listener);
    }

    public static ForegroundCallbacks get(Context context) {
        ForegroundCallbacks foregroundCallbacks = instance;
        if (foregroundCallbacks != null) {
            return foregroundCallbacks;
        }
        Context applicationContext = context.getApplicationContext();
        if (applicationContext instanceof Application) {
            init((Application) applicationContext);
        }
        throw new IllegalStateException("Foreground is not initialised and cannot obtain the Application object");
    }

    public static ForegroundCallbacks get() {
        return instance;
    }
}
