NetWorkMonitor.smali
.class public Lcom/cleanmaster/gameboost/view/NetWorkMonitor;
.super Ljava/lang/Object;
.source "NetWorkMonitor.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/cleanmaster/gameboost/view/NetWorkMonitor$a;,
Lcom/cleanmaster/gameboost/view/NetWorkMonitor$Callback;
}
.end annotation
# instance fields
.field a:Lcom/cleanmaster/gameboost/view/NetWorkMonitor$a;
.field b:Landroid/os/Handler;
.field c:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List",
"<",
"Lcom/cleanmaster/gameboost/view/NetWorkMonitor$Callback;",
">;"
}
.end annotation
.end field
.field d:Ljava/util/Random;
.field private e:Lcom/cleanmaster/gameboost/ping/PingClient;
.field private f:Landroid/content/Context;
.field private g:Ljava/lang/Runnable;
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.registers 4
.prologue
.line 78
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 56
new-instance v0, Landroid/os/Handler;
invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper;
move-result-object v1
invoke-direct {v0, v1}, Landroid/os/Handler;-><init>(Landroid/os/Looper;)V
iput-object v0, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->b:Landroid/os/Handler;
.line 59
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->c:Ljava/util/List;
.line 60
new-instance v0, Ljava/util/Random;
invoke-direct {v0}, Ljava/util/Random;-><init>()V
iput-object v0, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->d:Ljava/util/Random;
.line 62
new-instance v0, Lcom/cleanmaster/gameboost/view/a;
invoke-direct {v0, p0}, Lcom/cleanmaster/gameboost/view/a;-><init>(Lcom/cleanmaster/gameboost/view/NetWorkMonitor;)V
iput-object v0, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->g:Ljava/lang/Runnable;
.line 79
iput-object p1, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->f:Landroid/content/Context;
.line 80
invoke-direct {p0}, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->e()V
.line 81
return-void
.end method
.method private a(II)I
.registers 5
.prologue
.line 294
if-le p2, p1, :cond_b
move v0, p2
.line 297
:goto_3
const/4 v1, 0x4
if-lt v0, v1, :cond_7
.line 298
const/4 v0, 0x3
.line 300
:cond_7
if-gez v0, :cond_a
.line 301
const/4 v0, 0x0
.line 303
:cond_a
return v0
:cond_b
move v0, p1
goto :goto_3
.end method
.method private a(Landroid/content/Context;)Landroid/util/Pair;
.registers 6
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/Context;",
")",
"Landroid/util/Pair",
"<",
"Ljava/lang/Integer;",
"Ljava/lang/Integer;",
">;"
}
.end annotation
.prologue
const/4 v3, 0x1
const/4 v2, 0x0
.line 232
const-string v0, "connectivity"
invoke-virtual {p1, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/net/ConnectivityManager;
.line 234
invoke-virtual {v0, v2}, Landroid/net/ConnectivityManager;->getNetworkInfo(I)Landroid/net/NetworkInfo;
move-result-object v1
.line 236
invoke-virtual {v0, v3}, Landroid/net/ConnectivityManager;->getNetworkInfo(I)Landroid/net/NetworkInfo;
move-result-object v0
.line 238
if-eqz v0, :cond_2c
invoke-virtual {v0}, Landroid/net/NetworkInfo;->isConnected()Z
move-result v0
if-eqz v0, :cond_2c
.line 239
new-instance v0, Landroid/util/Pair;
invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
invoke-direct {p0, p1}, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->b(Landroid/content/Context;)I
move-result v2
invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
invoke-direct {v0, v1, v2}, Landroid/util/Pair;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V
.line 243
:goto_2b
return-object v0
.line 240
:cond_2c
if-eqz v1, :cond_47
invoke-virtual {v1}, Landroid/net/NetworkInfo;->isConnected()Z
move-result v0
if-eqz v0, :cond_47
.line 241
new-instance v0, Landroid/util/Pair;
const/4 v1, 0x2
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
invoke-direct {p0, p1}, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->c(Landroid/content/Context;)I
move-result v2
invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
invoke-direct {v0, v1, v2}, Landroid/util/Pair;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V
goto :goto_2b
.line 243
:cond_47
new-instance v0, Landroid/util/Pair;
const/4 v1, 0x3
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
invoke-direct {v0, v1, v2}, Landroid/util/Pair;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V
goto :goto_2b
.end method
.method static synthetic a(Lcom/cleanmaster/gameboost/view/NetWorkMonitor;Landroid/content/Context;)Landroid/util/Pair;
.registers 3
.prologue
.line 42
invoke-direct {p0, p1}, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->a(Landroid/content/Context;)Landroid/util/Pair;
move-result-object v0
return-object v0
.end method
.method private a(I)V
.registers 4
.prologue
.line 191
iget-object v0, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->b:Landroid/os/Handler;
new-instance v1, Lcom/cleanmaster/gameboost/view/h;
invoke-direct {v1, p0, p1}, Lcom/cleanmaster/gameboost/view/h;-><init>(Lcom/cleanmaster/gameboost/view/NetWorkMonitor;I)V
invoke-virtual {v0, v1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
.line 200
return-void
.end method
.method static synthetic a(Lcom/cleanmaster/gameboost/view/NetWorkMonitor;)V
.registers 1
.prologue
.line 42
invoke-direct {p0}, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->h()V
return-void
.end method
.method static synthetic a(Lcom/cleanmaster/gameboost/view/NetWorkMonitor;I)V
.registers 2
.prologue
.line 42
invoke-direct {p0, p1}, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->a(I)V
return-void
.end method
.method private b(Landroid/content/Context;)I
.registers 4
.prologue
.line 249
invoke-virtual {p1}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object v0
const-string v1, "wifi"
invoke-virtual {v0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/net/wifi/WifiManager;
.line 250
invoke-virtual {v0}, Landroid/net/wifi/WifiManager;->getConnectionInfo()Landroid/net/wifi/WifiInfo;
move-result-object v0
.line 251
invoke-virtual {v0}, Landroid/net/wifi/WifiInfo;->getBSSID()Ljava/lang/String;
move-result-object v1
if-eqz v1, :cond_20
.line 252
invoke-virtual {v0}, Landroid/net/wifi/WifiInfo;->getRssi()I
move-result v0
const/4 v1, 0x4
invoke-static {v0, v1}, Landroid/net/wifi/WifiManager;->calculateSignalLevel(II)I
move-result v0
.line 254
:goto_1f
return v0
:cond_20
const/4 v0, 0x3
goto :goto_1f
.end method
.method static synthetic b(Lcom/cleanmaster/gameboost/view/NetWorkMonitor;)Lcom/cleanmaster/gameboost/ping/PingClient;
.registers 2
.prologue
.line 42
iget-object v0, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->e:Lcom/cleanmaster/gameboost/ping/PingClient;
return-object v0
.end method
.method private c(Landroid/content/Context;)I
.registers 7
.prologue
.line 258
const/4 v1, -0x1
.line 260
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0x17
if-lt v0, v2, :cond_10
.line 261
const-string v0, "android.permission.ACCESS_COARSE_LOCATION"
invoke-static {p1, v0}, Landroid/support/v4/content/ContextCompat;->checkSelfPermission(Landroid/content/Context;Ljava/lang/String;)I
move-result v0
if-eqz v0, :cond_10
.line 290
:cond_f
return v1
.line 266
:cond_10
const-string v0, "phone"
invoke-virtual {p1, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/telephony/TelephonyManager;
.line 268
sget v2, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v3, 0x11
if-lt v2, v3, :cond_f
.line 269
invoke-virtual {v0}, Landroid/telephony/TelephonyManager;->getAllCellInfo()Ljava/util/List;
move-result-object v0
.line 270
if-eqz v0, :cond_f
.line 271
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v2
:goto_28
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_f
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/telephony/CellInfo;
.line 272
instance-of v3, v0, Landroid/telephony/CellInfoGsm;
if-eqz v3, :cond_49
.line 273
check-cast v0, Landroid/telephony/CellInfoGsm;
invoke-virtual {v0}, Landroid/telephony/CellInfoGsm;->getCellSignalStrength()Landroid/telephony/CellSignalStrengthGsm;
move-result-object v0
.line 274
invoke-virtual {v0}, Landroid/telephony/CellSignalStrengthGsm;->getLevel()I
move-result v0
invoke-direct {p0, v0, v1}, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->a(II)I
move-result v1
move v0, v1
:goto_47
move v1, v0
.line 287
goto :goto_28
.line 275
:cond_49
instance-of v3, v0, Landroid/telephony/CellInfoCdma;
if-eqz v3, :cond_5d
.line 276
check-cast v0, Landroid/telephony/CellInfoCdma;
invoke-virtual {v0}, Landroid/telephony/CellInfoCdma;->getCellSignalStrength()Landroid/telephony/CellSignalStrengthCdma;
move-result-object v0
.line 277
invoke-virtual {v0}, Landroid/telephony/CellSignalStrengthCdma;->getLevel()I
move-result v0
invoke-direct {p0, v0, v1}, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->a(II)I
move-result v1
move v0, v1
.line 278
goto :goto_47
:cond_5d
instance-of v3, v0, Landroid/telephony/CellInfoWcdma;
if-eqz v3, :cond_77
.line 279
sget v3, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v4, 0x12
if-lt v3, v4, :cond_8b
.line 280
check-cast v0, Landroid/telephony/CellInfoWcdma;
invoke-virtual {v0}, Landroid/telephony/CellInfoWcdma;->getCellSignalStrength()Landroid/telephony/CellSignalStrengthWcdma;
move-result-object v0
.line 281
invoke-virtual {v0}, Landroid/telephony/CellSignalStrengthWcdma;->getLevel()I
move-result v0
invoke-direct {p0, v0, v1}, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->a(II)I
move-result v1
move v0, v1
.line 282
goto :goto_47
.line 283
:cond_77
instance-of v3, v0, Landroid/telephony/CellInfoLte;
if-eqz v3, :cond_8b
.line 284
check-cast v0, Landroid/telephony/CellInfoLte;
invoke-virtual {v0}, Landroid/telephony/CellInfoLte;->getCellSignalStrength()Landroid/telephony/CellSignalStrengthLte;
move-result-object v0
.line 285
invoke-virtual {v0}, Landroid/telephony/CellSignalStrengthLte;->getLevel()I
move-result v0
invoke-direct {p0, v0, v1}, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->a(II)I
move-result v1
move v0, v1
goto :goto_47
:cond_8b
move v0, v1
goto :goto_47
.end method
.method static synthetic c(Lcom/cleanmaster/gameboost/view/NetWorkMonitor;)Ljava/lang/Runnable;
.registers 2
.prologue
.line 42
iget-object v0, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->g:Ljava/lang/Runnable;
return-object v0
.end method
.method static synthetic d(Lcom/cleanmaster/gameboost/view/NetWorkMonitor;)Landroid/content/Context;
.registers 2
.prologue
.line 42
iget-object v0, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->f:Landroid/content/Context;
return-object v0
.end method
.method private e()V
.registers 3
.prologue
.line 84
new-instance v0, Lcom/cleanmaster/gameboost/ping/PingClient;
invoke-direct {v0}, Lcom/cleanmaster/gameboost/ping/PingClient;-><init>()V
iput-object v0, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->e:Lcom/cleanmaster/gameboost/ping/PingClient;
.line 85
iget-object v0, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->e:Lcom/cleanmaster/gameboost/ping/PingClient;
new-instance v1, Lcom/cleanmaster/gameboost/view/c;
invoke-direct {v1, p0}, Lcom/cleanmaster/gameboost/view/c;-><init>(Lcom/cleanmaster/gameboost/view/NetWorkMonitor;)V
invoke-virtual {v0, v1}, Lcom/cleanmaster/gameboost/ping/PingClient;->a(Lcom/cleanmaster/gameboost/ping/PingClient$FetchNetSpeedListener;)V
.line 133
return-void
.end method
.method static synthetic e(Lcom/cleanmaster/gameboost/view/NetWorkMonitor;)V
.registers 1
.prologue
.line 42
invoke-direct {p0}, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->f()V
return-void
.end method
.method private f()V
.registers 3
.prologue
.line 161
iget-object v0, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->b:Landroid/os/Handler;
iget-object v1, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->g:Ljava/lang/Runnable;
invoke-virtual {v0, v1}, Landroid/os/Handler;->removeCallbacks(Ljava/lang/Runnable;)V
.line 162
iget-object v0, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->b:Landroid/os/Handler;
iget-object v1, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->g:Ljava/lang/Runnable;
invoke-virtual {v0, v1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
.line 163
return-void
.end method
.method private g()V
.registers 4
.prologue
.line 166
new-instance v0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor$a;
const/4 v1, 0x0
invoke-direct {v0, p0, v1}, Lcom/cleanmaster/gameboost/view/NetWorkMonitor$a;-><init>(Lcom/cleanmaster/gameboost/view/NetWorkMonitor;Lcom/cleanmaster/gameboost/view/a;)V
iput-object v0, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->a:Lcom/cleanmaster/gameboost/view/NetWorkMonitor$a;
.line 167
new-instance v0, Landroid/content/IntentFilter;
invoke-direct {v0}, Landroid/content/IntentFilter;-><init>()V
.line 168
const-string v1, "android.net.wifi.RSSI_CHANGED"
invoke-virtual {v0, v1}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
.line 169
const-string v1, "android.net.conn.CONNECTIVITY_CHANGE"
invoke-virtual {v0, v1}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
.line 170
iget-object v1, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->f:Landroid/content/Context;
iget-object v2, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->a:Lcom/cleanmaster/gameboost/view/NetWorkMonitor$a;
invoke-virtual {v1, v2, v0}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
.line 171
return-void
.end method
.method private h()V
.registers 2
.prologue
.line 174
new-instance v0, Lcom/cleanmaster/gameboost/view/f;
invoke-direct {v0, p0}, Lcom/cleanmaster/gameboost/view/f;-><init>(Lcom/cleanmaster/gameboost/view/NetWorkMonitor;)V
invoke-static {v0}, Lcom/cleanmaster/gameboost/util/BackgroundThread;->a(Ljava/lang/Runnable;)V
.line 188
return-void
.end method
# virtual methods
.method public a()V
.registers 1
.prologue
.line 136
invoke-direct {p0}, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->g()V
.line 137
return-void
.end method
.method public a(Lcom/cleanmaster/gameboost/view/NetWorkMonitor$Callback;)V
.registers 3
.prologue
.line 203
iget-object v0, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->c:Ljava/util/List;
invoke-interface {v0, p1}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
move-result v0
if-nez v0, :cond_d
.line 204
iget-object v0, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->c:Ljava/util/List;
invoke-interface {v0, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
.line 206
:cond_d
invoke-direct {p0}, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->f()V
.line 207
return-void
.end method
.method public b()V
.registers 1
.prologue
.line 140
invoke-direct {p0}, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->f()V
.line 141
return-void
.end method
.method public c()V
.registers 3
.prologue
.line 144
iget-object v0, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->b:Landroid/os/Handler;
iget-object v1, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->g:Ljava/lang/Runnable;
invoke-virtual {v0, v1}, Landroid/os/Handler;->removeCallbacks(Ljava/lang/Runnable;)V
.line 145
return-void
.end method
.method public d()V
.registers 3
.prologue
.line 149
iget-object v0, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->c:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->clear()V
.line 150
iget-object v0, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->a:Lcom/cleanmaster/gameboost/view/NetWorkMonitor$a;
if-eqz v0, :cond_10
.line 151
iget-object v0, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->f:Landroid/content/Context;
iget-object v1, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->a:Lcom/cleanmaster/gameboost/view/NetWorkMonitor$a;
invoke-virtual {v0, v1}, Landroid/content/Context;->unregisterReceiver(Landroid/content/BroadcastReceiver;)V
.line 153
:cond_10
iget-object v0, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->e:Lcom/cleanmaster/gameboost/ping/PingClient;
if-eqz v0, :cond_19
.line 154
iget-object v0, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->e:Lcom/cleanmaster/gameboost/ping/PingClient;
invoke-virtual {v0}, Lcom/cleanmaster/gameboost/ping/PingClient;->b()V
.line 156
:cond_19
iget-object v0, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->b:Landroid/os/Handler;
iget-object v1, p0, Lcom/cleanmaster/gameboost/view/NetWorkMonitor;->g:Ljava/lang/Runnable;
invoke-virtual {v0, v1}, Landroid/os/Handler;->removeCallbacks(Ljava/lang/Runnable;)V
.line 158
return-void
.end method