翰林优商.apk(点击下载) / MemoryPressureListener.java


package aegon.chrome.base;

import aegon.chrome.base.memory.MemoryPressureCallback;
import android.app.Activity;
import java.util.Iterator;

public class MemoryPressureListener {
    private static final String ACTION_LOW_MEMORY = "aegon.chrome.base.ACTION_LOW_MEMORY";
    private static final String ACTION_TRIM_MEMORY = "aegon.chrome.base.ACTION_TRIM_MEMORY";
    private static final String ACTION_TRIM_MEMORY_MODERATE = "aegon.chrome.base.ACTION_TRIM_MEMORY_MODERATE";
    private static final String ACTION_TRIM_MEMORY_RUNNING_CRITICAL = "aegon.chrome.base.ACTION_TRIM_MEMORY_RUNNING_CRITICAL";
    private static final ObserverList<MemoryPressureCallback> sCallbacks = new ObserverList<>();

    public static void addCallback(MemoryPressureCallback memoryPressureCallback) {
        sCallbacks.addObserver(memoryPressureCallback);
    }

    private static void addNativeCallback() {
        addCallback(MemoryPressureListener$$Lambda$1.lambdaFactory$());
    }

    public static boolean handleDebugIntent(Activity activity, String str) {
        int i;
        if (ACTION_LOW_MEMORY.equals(str)) {
            simulateLowMemoryPressureSignal(activity);
            return true;
        }
        if (ACTION_TRIM_MEMORY.equals(str)) {
            i = 80;
        } else if (ACTION_TRIM_MEMORY_RUNNING_CRITICAL.equals(str)) {
            i = 15;
        } else if (!ACTION_TRIM_MEMORY_MODERATE.equals(str)) {
            return false;
        } else {
            i = 60;
        }
        simulateTrimMemoryPressureSignal(activity, i);
        return true;
    }

    /* access modifiers changed from: private */
    public static native void nativeOnMemoryPressure(int i);

    public static void notifyMemoryPressure(int i) {
        Iterator<MemoryPressureCallback> it = sCallbacks.iterator();
        while (it.hasNext()) {
            it.next().onPressure(i);
        }
    }

    public static void removeCallback(MemoryPressureCallback memoryPressureCallback) {
        sCallbacks.removeObserver(memoryPressureCallback);
    }

    private static void simulateLowMemoryPressureSignal(Activity activity) {
        activity.getApplication().onLowMemory();
        activity.onLowMemory();
    }

    private static void simulateTrimMemoryPressureSignal(Activity activity, int i) {
        activity.getApplication().onTrimMemory(i);
        activity.onTrimMemory(i);
    }
}