b.smali
.class public final Lcom/imo/android/imoim/debugtoolview/b;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/imo/android/imoim/debugtoolview/b$a;
}
.end annotation
# static fields
.field public static final a:Lcom/imo/android/imoim/debugtoolview/b;
.field private static b:Ljava/util/Timer;
.field private static c:J
.field private static d:J
.field private static e:J
.field private static final f:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList<",
"Lcom/imo/android/imoim/debugtoolview/b$a;",
">;"
}
.end annotation
.end field
.field private static g:Z
.field private static h:Z
.field private static final i:Ljava/text/DecimalFormat;
# direct methods
.method static constructor <clinit>()V
.registers 2
.line 13
new-instance v0, Lcom/imo/android/imoim/debugtoolview/b;
invoke-direct {v0}, Lcom/imo/android/imoim/debugtoolview/b;-><init>()V
sput-object v0, Lcom/imo/android/imoim/debugtoolview/b;->a:Lcom/imo/android/imoim/debugtoolview/b;
.line 19
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
sput-object v0, Lcom/imo/android/imoim/debugtoolview/b;->f:Ljava/util/ArrayList;
const/4 v0, 0x1
.line 20
sput-boolean v0, Lcom/imo/android/imoim/debugtoolview/b;->g:Z
.line 21
sput-boolean v0, Lcom/imo/android/imoim/debugtoolview/b;->h:Z
.line 22
new-instance v0, Ljava/text/DecimalFormat;
const-string v1, "0.##"
invoke-direct {v0, v1}, Ljava/text/DecimalFormat;-><init>(Ljava/lang/String;)V
.line 23
sget-object v1, Ljava/math/RoundingMode;->FLOOR:Ljava/math/RoundingMode;
invoke-virtual {v0, v1}, Ljava/text/DecimalFormat;->setRoundingMode(Ljava/math/RoundingMode;)V
.line 22
sput-object v0, Lcom/imo/android/imoim/debugtoolview/b;->i:Ljava/text/DecimalFormat;
return-void
.end method
.method private constructor <init>()V
.registers 1
.line 13
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static final synthetic a()V
.registers 8
.line 1080
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v0
.line 1081
invoke-static {}, Lcom/imo/android/imoim/debugtoolview/b;->c()J
move-result-wide v2
.line 1083
sget-wide v4, Lcom/imo/android/imoim/debugtoolview/b;->d:J
sub-long v4, v2, v4
const-wide/16 v6, 0x8
mul-long v4, v4, v6
long-to-double v4, v4
const-wide v6, 0x408f400000000000L # 1000.0
invoke-static {v4, v5}, Ljava/lang/Double;->isNaN(D)Z
mul-double v4, v4, v6
sget-wide v6, Lcom/imo/android/imoim/debugtoolview/b;->e:J
sub-long v6, v0, v6
long-to-double v6, v6
invoke-static {v6, v7}, Ljava/lang/Double;->isNaN(D)Z
div-double/2addr v4, v6
.line 1084
invoke-static {}, Lcom/imo/android/imoim/debugtoolview/b;->d()J
move-result-wide v6
.line 1085
sput-wide v0, Lcom/imo/android/imoim/debugtoolview/b;->e:J
.line 1086
sput-wide v6, Lcom/imo/android/imoim/debugtoolview/b;->c:J
.line 1087
sput-wide v2, Lcom/imo/android/imoim/debugtoolview/b;->d:J
.line 1089
sget-boolean v0, Lcom/imo/android/imoim/debugtoolview/b;->h:Z
if-eqz v0, :cond_4a
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
sget-object v1, Lcom/imo/android/imoim/debugtoolview/b;->i:Ljava/text/DecimalFormat;
invoke-virtual {v1, v4, v5}, Ljava/text/DecimalFormat;->format(D)Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, " kbps"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
goto :goto_4c
:cond_4a
const-string v0, "--"
.line 1090
:goto_4c
invoke-static {}, Lsg/bigo/c/a/a;->a()Lkotlinx/coroutines/aa;
move-result-object v1
check-cast v1, Lkotlin/c/e;
invoke-static {v1}, Lkotlinx/coroutines/ag;->a(Lkotlin/c/e;)Lkotlinx/coroutines/af;
move-result-object v1
new-instance v2, Lcom/imo/android/imoim/debugtoolview/b$c;
const/4 v3, 0x0
invoke-direct {v2, v0, v3}, Lcom/imo/android/imoim/debugtoolview/b$c;-><init>(Ljava/lang/String;Lkotlin/c/c;)V
check-cast v2, Lkotlin/f/a/m;
const/4 v0, 0x3
invoke-static {v1, v3, v3, v2, v0}, Lkotlinx/coroutines/e;->a(Lkotlinx/coroutines/af;Lkotlin/c/e;Lkotlinx/coroutines/ah;Lkotlin/f/a/m;I)Lkotlinx/coroutines/br;
return-void
.end method
.method public static a(Lcom/imo/android/imoim/debugtoolview/b$a;)V
.registers 9
const-string v0, "l"
invoke-static {p0, v0}, Lkotlin/f/b/o;->b(Ljava/lang/Object;Ljava/lang/String;)V
.line 52
sget-object v0, Lcom/imo/android/imoim/debugtoolview/b;->f:Ljava/util/ArrayList;
invoke-virtual {v0, p0}, Ljava/util/ArrayList;->contains(Ljava/lang/Object;)Z
move-result v0
if-nez v0, :cond_12
.line 53
sget-object v0, Lcom/imo/android/imoim/debugtoolview/b;->f:Ljava/util/ArrayList;
invoke-virtual {v0, p0}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 55
:cond_12
sget-object p0, Lcom/imo/android/imoim/debugtoolview/b;->b:Ljava/util/Timer;
if-nez p0, :cond_3f
.line 56
invoke-static {}, Lcom/imo/android/imoim/debugtoolview/b;->d()J
move-result-wide v0
sput-wide v0, Lcom/imo/android/imoim/debugtoolview/b;->c:J
.line 57
invoke-static {}, Lcom/imo/android/imoim/debugtoolview/b;->c()J
move-result-wide v0
sput-wide v0, Lcom/imo/android/imoim/debugtoolview/b;->d:J
.line 58
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v0
sput-wide v0, Lcom/imo/android/imoim/debugtoolview/b;->e:J
.line 59
new-instance p0, Ljava/util/Timer;
invoke-direct {p0}, Ljava/util/Timer;-><init>()V
.line 60
new-instance v0, Lcom/imo/android/imoim/debugtoolview/b$b;
invoke-direct {v0}, Lcom/imo/android/imoim/debugtoolview/b$b;-><init>()V
move-object v3, v0
check-cast v3, Ljava/util/TimerTask;
const-wide/16 v4, 0x3e8
const-wide/16 v6, 0x3e8
move-object v2, p0
invoke-virtual/range {v2 .. v7}, Ljava/util/Timer;->schedule(Ljava/util/TimerTask;JJ)V
.line 59
sput-object p0, Lcom/imo/android/imoim/debugtoolview/b;->b:Ljava/util/Timer;
:cond_3f
return-void
.end method
.method public static final synthetic b()Ljava/util/ArrayList;
.registers 1
.line 13
sget-object v0, Lcom/imo/android/imoim/debugtoolview/b;->f:Ljava/util/ArrayList;
return-object v0
.end method
.method public static b(Lcom/imo/android/imoim/debugtoolview/b$a;)V
.registers 2
const-string v0, "l"
invoke-static {p0, v0}, Lkotlin/f/b/o;->b(Ljava/lang/Object;Ljava/lang/String;)V
.line 70
sget-object v0, Lcom/imo/android/imoim/debugtoolview/b;->f:Ljava/util/ArrayList;
invoke-virtual {v0, p0}, Ljava/util/ArrayList;->remove(Ljava/lang/Object;)Z
.line 71
sget-object p0, Lcom/imo/android/imoim/debugtoolview/b;->f:Ljava/util/ArrayList;
invoke-virtual {p0}, Ljava/util/ArrayList;->isEmpty()Z
move-result p0
if-eqz p0, :cond_1c
.line 72
sget-object p0, Lcom/imo/android/imoim/debugtoolview/b;->b:Ljava/util/Timer;
if-eqz p0, :cond_1c
.line 73
invoke-virtual {p0}, Ljava/util/Timer;->cancel()V
const/4 p0, 0x0
.line 74
sput-object p0, Lcom/imo/android/imoim/debugtoolview/b;->b:Ljava/util/Timer;
:cond_1c
return-void
.end method
.method private static c()J
.registers 5
.line 29
invoke-static {}, Lcom/imo/android/imoim/IMO;->a()Lcom/imo/android/imoim/IMO;
move-result-object v0
const-string v1, "IMO.getInstance()"
invoke-static {v0, v1}, Lkotlin/f/b/o;->a(Ljava/lang/Object;Ljava/lang/String;)V
invoke-virtual {v0}, Lcom/imo/android/imoim/IMO;->getApplicationInfo()Landroid/content/pm/ApplicationInfo;
move-result-object v0
iget v0, v0, Landroid/content/pm/ApplicationInfo;->uid:I
invoke-static {v0}, Landroid/net/TrafficStats;->getUidRxBytes(I)J
move-result-wide v0
const-wide/16 v2, -0x1
cmp-long v4, v0, v2
if-nez v4, :cond_1f
const/4 v0, 0x0
.line 31
sput-boolean v0, Lcom/imo/android/imoim/debugtoolview/b;->h:Z
const-wide/16 v0, 0x0
return-wide v0
:cond_1f
const/4 v2, 0x1
.line 34
sput-boolean v2, Lcom/imo/android/imoim/debugtoolview/b;->h:Z
const-wide/16 v2, 0x400
.line 35
div-long/2addr v0, v2
return-wide v0
.end method
.method private static d()J
.registers 5
.line 41
invoke-static {}, Landroid/net/TrafficStats;->getTotalRxBytes()J
move-result-wide v0
const-wide/16 v2, -0x1
cmp-long v4, v0, v2
if-nez v4, :cond_10
const/4 v0, 0x0
.line 43
sput-boolean v0, Lcom/imo/android/imoim/debugtoolview/b;->g:Z
const-wide/16 v0, 0x0
return-wide v0
:cond_10
const/4 v2, 0x1
.line 46
sput-boolean v2, Lcom/imo/android/imoim/debugtoolview/b;->g:Z
const-wide/16 v2, 0x400
.line 47
div-long/2addr v0, v2
return-wide v0
.end method