Files
rr3-apk/decompiled-community/sources/com/mbridge/msdk/playercommon/exoplayer2/scheduler/RequirementsWatcher.java
Daniel Elliott c080f0d97f Add Discord community version (64-bit only)
- Added realracing3-community.apk (71.57 MB)
- Removed 32-bit support (armeabi-v7a)
- Only includes arm64-v8a libraries
- Decompiled source code included
- Added README-community.md with analysis
2026-02-18 15:48:36 -08:00

157 lines
5.9 KiB
Java

package com.mbridge.msdk.playercommon.exoplayer2.scheduler;
import android.annotation.TargetApi;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.net.ConnectivityManager;
import android.net.Network;
import android.net.NetworkRequest;
import android.os.Handler;
import android.os.Looper;
import androidx.annotation.RequiresApi;
import com.mbridge.msdk.playercommon.exoplayer2.util.Assertions;
import com.mbridge.msdk.playercommon.exoplayer2.util.Util;
/* loaded from: classes4.dex */
public final class RequirementsWatcher {
private static final String TAG = "RequirementsWatcher";
private final Context context;
private final Listener listener;
private CapabilityValidatedCallback networkCallback;
private DeviceStatusChangeReceiver receiver;
private final Requirements requirements;
private boolean requirementsWereMet;
public interface Listener {
void requirementsMet(RequirementsWatcher requirementsWatcher);
void requirementsNotMet(RequirementsWatcher requirementsWatcher);
}
/* JADX INFO: Access modifiers changed from: private */
public static void logd(String str) {
}
public final Requirements getRequirements() {
return this.requirements;
}
public RequirementsWatcher(Context context, Listener listener, Requirements requirements) {
this.requirements = requirements;
this.listener = listener;
this.context = context.getApplicationContext();
logd(this + " created");
}
public final void start() {
Assertions.checkNotNull(Looper.myLooper());
checkRequirements(true);
IntentFilter intentFilter = new IntentFilter();
if (this.requirements.getRequiredNetworkType() != 0) {
if (Util.SDK_INT >= 23) {
registerNetworkCallbackV23();
} else {
intentFilter.addAction("android.net.conn.CONNECTIVITY_CHANGE");
}
}
if (this.requirements.isChargingRequired()) {
intentFilter.addAction("android.intent.action.ACTION_POWER_CONNECTED");
intentFilter.addAction("android.intent.action.ACTION_POWER_DISCONNECTED");
}
if (this.requirements.isIdleRequired()) {
if (Util.SDK_INT >= 23) {
intentFilter.addAction("android.os.action.DEVICE_IDLE_MODE_CHANGED");
} else {
intentFilter.addAction("android.intent.action.SCREEN_ON");
intentFilter.addAction("android.intent.action.SCREEN_OFF");
}
}
DeviceStatusChangeReceiver deviceStatusChangeReceiver = new DeviceStatusChangeReceiver();
this.receiver = deviceStatusChangeReceiver;
this.context.registerReceiver(deviceStatusChangeReceiver, intentFilter, null, new Handler());
logd(this + " started");
}
public final void stop() {
this.context.unregisterReceiver(this.receiver);
this.receiver = null;
if (this.networkCallback != null) {
unregisterNetworkCallback();
}
logd(this + " stopped");
}
public final String toString() {
return super.toString();
}
@TargetApi(23)
private void registerNetworkCallbackV23() {
ConnectivityManager connectivityManager = (ConnectivityManager) this.context.getSystemService("connectivity");
NetworkRequest build = new NetworkRequest.Builder().addCapability(16).build();
CapabilityValidatedCallback capabilityValidatedCallback = new CapabilityValidatedCallback();
this.networkCallback = capabilityValidatedCallback;
connectivityManager.registerNetworkCallback(build, capabilityValidatedCallback);
}
private void unregisterNetworkCallback() {
if (Util.SDK_INT >= 21) {
((ConnectivityManager) this.context.getSystemService("connectivity")).unregisterNetworkCallback(this.networkCallback);
this.networkCallback = null;
}
}
/* JADX INFO: Access modifiers changed from: private */
public void checkRequirements(boolean z) {
boolean checkRequirements = this.requirements.checkRequirements(this.context);
if (!z && checkRequirements == this.requirementsWereMet) {
logd("requirementsAreMet is still " + checkRequirements);
return;
}
this.requirementsWereMet = checkRequirements;
if (checkRequirements) {
logd("start job");
this.listener.requirementsMet(this);
} else {
logd("stop job");
this.listener.requirementsNotMet(this);
}
}
public class DeviceStatusChangeReceiver extends BroadcastReceiver {
private DeviceStatusChangeReceiver() {
}
@Override // android.content.BroadcastReceiver
public void onReceive(Context context, Intent intent) {
if (isInitialStickyBroadcast()) {
return;
}
RequirementsWatcher.logd(RequirementsWatcher.this + " received " + intent.getAction());
RequirementsWatcher.this.checkRequirements(false);
}
}
@RequiresApi(api = 21)
public final class CapabilityValidatedCallback extends ConnectivityManager.NetworkCallback {
private CapabilityValidatedCallback() {
}
@Override // android.net.ConnectivityManager.NetworkCallback
public final void onAvailable(Network network) {
super.onAvailable(network);
RequirementsWatcher.logd(RequirementsWatcher.this + " NetworkCallback.onAvailable");
RequirementsWatcher.this.checkRequirements(false);
}
@Override // android.net.ConnectivityManager.NetworkCallback
public final void onLost(Network network) {
super.onLost(network);
RequirementsWatcher.logd(RequirementsWatcher.this + " NetworkCallback.onLost");
RequirementsWatcher.this.checkRequirements(false);
}
}
}