Requirements.smali
.class public final Lcom/google/android/exoplayer2/scheduler/Requirements;
.super Ljava/lang/Object;
.source "Requirements.java"
# interfaces
.implements Landroid/os/Parcelable;
# static fields
.field public static final CREATOR:Landroid/os/Parcelable$Creator;
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroid/os/Parcelable$Creator<",
"Lcom/google/android/exoplayer2/scheduler/Requirements;",
">;"
}
.end annotation
.end field
# instance fields
.field private final a:I
# direct methods
.method static constructor <clinit>()V
.registers 1
.line 1
new-instance v0, Lcom/google/android/exoplayer2/scheduler/c;
invoke-direct {v0}, Lcom/google/android/exoplayer2/scheduler/c;-><init>()V
sput-object v0, Lcom/google/android/exoplayer2/scheduler/Requirements;->CREATOR:Landroid/os/Parcelable$Creator;
return-void
.end method
.method public constructor <init>(I)V
.registers 3
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
and-int/lit8 v0, p1, 0x2
if-eqz v0, :cond_9
or-int/lit8 p1, p1, 0x1
.line 2
:cond_9
iput p1, p0, Lcom/google/android/exoplayer2/scheduler/Requirements;->a:I
return-void
.end method
.method private static a(Landroid/net/ConnectivityManager;)Z
.registers 4
.line 2
sget v0, Lcom/google/android/exoplayer2/util/L;->a:I
const/4 v1, 0x1
const/16 v2, 0x18
if-ge v0, v2, :cond_8
return v1
.line 3
:cond_8
invoke-virtual {p0}, Landroid/net/ConnectivityManager;->getActiveNetwork()Landroid/net/Network;
move-result-object v0
const/4 v2, 0x0
if-nez v0, :cond_10
return v2
.line 4
:cond_10
invoke-virtual {p0, v0}, Landroid/net/ConnectivityManager;->getNetworkCapabilities(Landroid/net/Network;)Landroid/net/NetworkCapabilities;
move-result-object p0
if-eqz p0, :cond_1f
const/16 v0, 0x10
.line 5
invoke-virtual {p0, v0}, Landroid/net/NetworkCapabilities;->hasCapability(I)Z
move-result p0
if-eqz p0, :cond_1f
goto :goto_20
:cond_1f
const/4 v1, 0x0
:goto_20
return v1
.end method
.method private d(Landroid/content/Context;)I
.registers 4
.line 1
invoke-virtual {p0}, Lcom/google/android/exoplayer2/scheduler/Requirements;->e()Z
move-result v0
const/4 v1, 0x0
if-nez v0, :cond_8
return v1
:cond_8
const-string v0, "connectivity"
.line 2
invoke-virtual {p1, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p1
invoke-static {p1}, Lcom/google/android/exoplayer2/util/d;->a(Ljava/lang/Object;)Ljava/lang/Object;
check-cast p1, Landroid/net/ConnectivityManager;
.line 3
invoke-virtual {p1}, Landroid/net/ConnectivityManager;->getActiveNetworkInfo()Landroid/net/NetworkInfo;
move-result-object v0
if-eqz v0, :cond_35
.line 4
invoke-virtual {v0}, Landroid/net/NetworkInfo;->isConnected()Z
move-result v0
if-eqz v0, :cond_35
.line 5
invoke-static {p1}, Lcom/google/android/exoplayer2/scheduler/Requirements;->a(Landroid/net/ConnectivityManager;)Z
move-result v0
if-nez v0, :cond_26
goto :goto_35
.line 6
:cond_26
invoke-virtual {p0}, Lcom/google/android/exoplayer2/scheduler/Requirements;->h()Z
move-result v0
if-eqz v0, :cond_34
invoke-virtual {p1}, Landroid/net/ConnectivityManager;->isActiveNetworkMetered()Z
move-result p1
if-eqz p1, :cond_34
const/4 p1, 0x2
return p1
:cond_34
return v1
.line 7
:cond_35
:goto_35
iget p1, p0, Lcom/google/android/exoplayer2/scheduler/Requirements;->a:I
and-int/lit8 p1, p1, 0x3
return p1
.end method
.method private e(Landroid/content/Context;)Z
.registers 5
.line 2
new-instance v0, Landroid/content/IntentFilter;
const-string v1, "android.intent.action.BATTERY_CHANGED"
invoke-direct {v0, v1}, Landroid/content/IntentFilter;-><init>(Ljava/lang/String;)V
const/4 v1, 0x0
.line 3
invoke-virtual {p1, v1, v0}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
move-result-object p1
const/4 v0, 0x0
if-nez p1, :cond_10
return v0
:cond_10
const/4 v1, -0x1
const-string v2, "status"
.line 4
invoke-virtual {p1, v2, v1}, Landroid/content/Intent;->getIntExtra(Ljava/lang/String;I)I
move-result p1
const/4 v1, 0x2
if-eq p1, v1, :cond_1d
const/4 v1, 0x5
if-ne p1, v1, :cond_1e
:cond_1d
const/4 v0, 0x1
:cond_1e
return v0
.end method
.method private f(Landroid/content/Context;)Z
.registers 6
const-string v0, "power"
.line 2
invoke-virtual {p1, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p1
invoke-static {p1}, Lcom/google/android/exoplayer2/util/d;->a(Ljava/lang/Object;)Ljava/lang/Object;
check-cast p1, Landroid/os/PowerManager;
.line 3
sget v0, Lcom/google/android/exoplayer2/util/L;->a:I
const/4 v1, 0x1
const/4 v2, 0x0
const/16 v3, 0x17
if-lt v0, v3, :cond_18
.line 4
invoke-virtual {p1}, Landroid/os/PowerManager;->isDeviceIdleMode()Z
move-result v1
goto :goto_2b
:cond_18
const/16 v3, 0x14
if-lt v0, v3, :cond_23
.line 5
invoke-virtual {p1}, Landroid/os/PowerManager;->isInteractive()Z
move-result p1
if-nez p1, :cond_2a
goto :goto_2b
:cond_23
invoke-virtual {p1}, Landroid/os/PowerManager;->isScreenOn()Z
move-result p1
if-nez p1, :cond_2a
goto :goto_2b
:cond_2a
const/4 v1, 0x0
:goto_2b
return v1
.end method
.method private g(Landroid/content/Context;)Z
.registers 4
.line 1
new-instance v0, Landroid/content/IntentFilter;
const-string v1, "android.intent.action.DEVICE_STORAGE_LOW"
invoke-direct {v0, v1}, Landroid/content/IntentFilter;-><init>(Ljava/lang/String;)V
const/4 v1, 0x0
invoke-virtual {p1, v1, v0}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
move-result-object p1
if-nez p1, :cond_10
const/4 p1, 0x1
goto :goto_11
:cond_10
const/4 p1, 0x0
:goto_11
return p1
.end method
# virtual methods
.method public a()I
.registers 2
.line 1
iget v0, p0, Lcom/google/android/exoplayer2/scheduler/Requirements;->a:I
return v0
.end method
.method public b()Z
.registers 2
.line 1
iget v0, p0, Lcom/google/android/exoplayer2/scheduler/Requirements;->a:I
and-int/lit8 v0, v0, 0x8
if-eqz v0, :cond_8
const/4 v0, 0x1
goto :goto_9
:cond_8
const/4 v0, 0x0
:goto_9
return v0
.end method
.method public c(Landroid/content/Context;)I
.registers 4
.line 2
invoke-direct {p0, p1}, Lcom/google/android/exoplayer2/scheduler/Requirements;->d(Landroid/content/Context;)I
move-result v0
.line 3
invoke-virtual {p0}, Lcom/google/android/exoplayer2/scheduler/Requirements;->b()Z
move-result v1
if-eqz v1, :cond_12
invoke-direct {p0, p1}, Lcom/google/android/exoplayer2/scheduler/Requirements;->e(Landroid/content/Context;)Z
move-result v1
if-nez v1, :cond_12
or-int/lit8 v0, v0, 0x8
.line 4
:cond_12
invoke-virtual {p0}, Lcom/google/android/exoplayer2/scheduler/Requirements;->c()Z
move-result v1
if-eqz v1, :cond_20
invoke-direct {p0, p1}, Lcom/google/android/exoplayer2/scheduler/Requirements;->f(Landroid/content/Context;)Z
move-result v1
if-nez v1, :cond_20
or-int/lit8 v0, v0, 0x4
.line 5
:cond_20
invoke-virtual {p0}, Lcom/google/android/exoplayer2/scheduler/Requirements;->f()Z
move-result v1
if-eqz v1, :cond_2e
invoke-direct {p0, p1}, Lcom/google/android/exoplayer2/scheduler/Requirements;->g(Landroid/content/Context;)Z
move-result p1
if-nez p1, :cond_2e
or-int/lit8 v0, v0, 0x10
:cond_2e
return v0
.end method
.method public c()Z
.registers 2
.line 1
iget v0, p0, Lcom/google/android/exoplayer2/scheduler/Requirements;->a:I
and-int/lit8 v0, v0, 0x4
if-eqz v0, :cond_8
const/4 v0, 0x1
goto :goto_9
:cond_8
const/4 v0, 0x0
:goto_9
return v0
.end method
.method public describeContents()I
.registers 2
const/4 v0, 0x0
return v0
.end method
.method public e()Z
.registers 3
.line 1
iget v0, p0, Lcom/google/android/exoplayer2/scheduler/Requirements;->a:I
const/4 v1, 0x1
and-int/2addr v0, v1
if-eqz v0, :cond_7
goto :goto_8
:cond_7
const/4 v1, 0x0
:goto_8
return v1
.end method
.method public equals(Ljava/lang/Object;)Z
.registers 6
const/4 v0, 0x1
if-ne p0, p1, :cond_4
return v0
:cond_4
const/4 v1, 0x0
if-eqz p1, :cond_1b
.line 1
const-class v2, Lcom/google/android/exoplayer2/scheduler/Requirements;
invoke-virtual {p1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v3
if-eq v2, v3, :cond_10
goto :goto_1b
.line 2
:cond_10
iget v2, p0, Lcom/google/android/exoplayer2/scheduler/Requirements;->a:I
check-cast p1, Lcom/google/android/exoplayer2/scheduler/Requirements;
iget p1, p1, Lcom/google/android/exoplayer2/scheduler/Requirements;->a:I
if-ne v2, p1, :cond_19
goto :goto_1a
:cond_19
const/4 v0, 0x0
:goto_1a
return v0
:cond_1b
:goto_1b
return v1
.end method
.method public f()Z
.registers 2
.line 1
iget v0, p0, Lcom/google/android/exoplayer2/scheduler/Requirements;->a:I
and-int/lit8 v0, v0, 0x10
if-eqz v0, :cond_8
const/4 v0, 0x1
goto :goto_9
:cond_8
const/4 v0, 0x0
:goto_9
return v0
.end method
.method public h()Z
.registers 2
.line 1
iget v0, p0, Lcom/google/android/exoplayer2/scheduler/Requirements;->a:I
and-int/lit8 v0, v0, 0x2
if-eqz v0, :cond_8
const/4 v0, 0x1
goto :goto_9
:cond_8
const/4 v0, 0x0
:goto_9
return v0
.end method
.method public hashCode()I
.registers 2
.line 1
iget v0, p0, Lcom/google/android/exoplayer2/scheduler/Requirements;->a:I
return v0
.end method
.method public writeToParcel(Landroid/os/Parcel;I)V
.registers 3
.line 1
iget p2, p0, Lcom/google/android/exoplayer2/scheduler/Requirements;->a:I
invoke-virtual {p1, p2}, Landroid/os/Parcel;->writeInt(I)V
return-void
.end method