what-the-bank/sources/com/huawei/hms/framework/common/ActivityUtil.java

145 lines
5.0 KiB
Java
Raw Permalink Normal View History

2024-07-27 18:17:47 +07:00
package com.huawei.hms.framework.common;
import android.app.Activity;
import android.app.Application;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import java.util.ArrayList;
import java.util.List;
/* loaded from: classes2.dex */
public class ActivityUtil {
private static final int MAX_NUM = 20;
private static final String TAG = "ActivityUtil";
private static volatile ActivityUtil instance;
private boolean isForeground;
private List<OnAppStatusListener> onAppStatusListeners = new ArrayList();
private Application.ActivityLifecycleCallbacks activityLifecycleCallbacks = new Application.ActivityLifecycleCallbacks(this) { // from class: com.huawei.hms.framework.common.ActivityUtil.1
private int activityStartCount = 0;
final ActivityUtil this$0;
@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) {
}
@Override // android.app.Application.ActivityLifecycleCallbacks
public void onActivityResumed(Activity activity) {
}
@Override // android.app.Application.ActivityLifecycleCallbacks
public void onActivitySaveInstanceState(Activity activity, Bundle bundle) {
}
{
this.this$0 = this;
}
@Override // android.app.Application.ActivityLifecycleCallbacks
public void onActivityStarted(Activity activity) {
int i = this.activityStartCount + 1;
this.activityStartCount = i;
if (i == 1) {
this.this$0.isForeground = true;
Logger.d(ActivityUtil.TAG, "onActivityStarted");
for (int i2 = 0; i2 < this.this$0.onAppStatusListeners.size(); i2++) {
((OnAppStatusListener) this.this$0.onAppStatusListeners.get(i2)).onFront();
}
}
}
@Override // android.app.Application.ActivityLifecycleCallbacks
public void onActivityStopped(Activity activity) {
int i = this.activityStartCount - 1;
this.activityStartCount = i;
if (i == 0) {
Logger.d(ActivityUtil.TAG, "onActivityStopped");
this.this$0.isForeground = false;
for (int i2 = 0; i2 < this.this$0.onAppStatusListeners.size(); i2++) {
((OnAppStatusListener) this.this$0.onAppStatusListeners.get(i2)).onBack();
}
}
}
};
/* loaded from: classes2.dex */
public interface OnAppStatusListener {
void onBack();
void onFront();
}
private ActivityUtil() {
}
public static ActivityUtil getInstance() {
if (instance == null) {
synchronized (ActivityUtil.class) {
if (instance == null) {
instance = new ActivityUtil();
}
}
}
return instance;
}
@Deprecated
public static boolean isForeground(Context context) {
return getInstance().isForeground();
}
public static PendingIntent getActivities(Context context, int i, Intent[] intentArr, int i2) {
if (context == null) {
Logger.w(TAG, "context is null");
return null;
}
try {
return PendingIntent.getActivities(context, i, intentArr, i2);
} catch (RuntimeException e) {
Logger.e(TAG, "dealType rethrowFromSystemServer:", e);
return null;
}
}
public void register() {
Context appContext = ContextHolder.getAppContext();
if (appContext instanceof Application) {
((Application) appContext).registerActivityLifecycleCallbacks(this.activityLifecycleCallbacks);
} else {
Logger.w(TAG, "context is not application, register background fail");
}
}
public void unRegister() {
Context appContext = ContextHolder.getAppContext();
if (appContext instanceof Application) {
((Application) appContext).unregisterActivityLifecycleCallbacks(this.activityLifecycleCallbacks);
} else {
Logger.w(TAG, "context is not application, unRegister background fail");
}
}
public void setOnAppStatusListener(OnAppStatusListener onAppStatusListener) {
if (onAppStatusListener == null) {
Logger.w(TAG, "onAppStatusListener is null");
} else if (this.onAppStatusListeners.size() >= 20) {
Logger.w(TAG, "onAppStatusListener of count is max");
} else {
this.onAppStatusListeners.add(onAppStatusListener);
}
}
public boolean isForeground() {
return this.isForeground;
}
}