a.smali

.class public final Lh0/a;
.super Ljava/lang/Object;
.source "ScreenShotDetection.kt"

# interfaces
.implements Lcom/shopee/hamster/base/apm/api/module/ext/SuspendRunnable;


# annotations
.annotation system Ldalvik/annotation/MemberClasses;
    value = {
        Lh0/a$a;
    }
.end annotation

.annotation runtime Lkotlin/Metadata;
    bv = {
        0x1,
        0x0,
        0x3
    }
    d1 = {
        "\u0000,\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0008\u0002\n\u0002\u0010\t\n\u0002\u0008\u0002\n\u0002\u0010\u0002\n\u0002\u0008\u0003\u0008\u0000\u0018\u0000 \u000e2\u00020\u0001:\u0001\u000eB\u001b\u0012\u000c\u0010\u0002\u001a\u0008\u0012\u0004\u0012\u00020\u00040\u0003\u0012\u0006\u0010\u0005\u001a\u00020\u0006\u00a2\u0006\u0002\u0010\u0007J\u0011\u0010\u000b\u001a\u00020\u000cH\u0096@\u00f8\u0001\u0000\u00a2\u0006\u0002\u0010\rR\u0014\u0010\u0002\u001a\u0008\u0012\u0004\u0012\u00020\u00040\u0003X\u0082\u0004\u00a2\u0006\u0002\n\u0000R\u000e\u0010\u0008\u001a\u00020\tX\u0082\u0004\u00a2\u0006\u0002\n\u0000R\u000e\u0010\n\u001a\u00020\tX\u0082\u0004\u00a2\u0006\u0002\n\u0000R\u000e\u0010\u0005\u001a\u00020\u0006X\u0082\u0004\u00a2\u0006\u0002\n\u0000\u0082\u0002\u0004\n\u0002\u0008\u0019\u00a8\u0006\u000f"
    }
    d2 = {
        "Lcom/argusapm/android/core/job/activity/screen/ScreenShotDetection;",
        "Lcom/shopee/hamster/base/apm/api/module/ext/SuspendRunnable;",
        "activityRef",
        "Ljava/lang/ref/WeakReference;",
        "Landroid/app/Activity;",
        "cycle",
        "Lcom/argusapm/android/core/job/activity/monitor/PageCycle;",
        "(Ljava/lang/ref/WeakReference;Lcom/argusapm/android/core/job/activity/monitor/PageCycle;)V",
        "configCount",
        "",
        "configDelay",
        "run",
        "",
        "(Lkotlin/coroutines/Continuation;)Ljava/lang/Object;",
        "Companion",
        "hamster-activity_release"
    }
    k = 0x1
    mv = {
        0x1,
        0x4,
        0x2
    }
.end annotation


# instance fields
.field public final a:J

.field public final b:J

.field public final c:Ljava/lang/ref/WeakReference;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/lang/ref/WeakReference<",
            "Landroid/app/Activity;",
            ">;"
        }
    .end annotation
.end field

.field public final d:Lg0/a;


# direct methods
.method public static constructor <clinit>()V
    .registers 2

    new-instance v0, Lh0/a$a;

    const/4 v1, 0x0

    invoke-direct {v0, v1}, Lh0/a$a;-><init>(Lkotlin/jvm/internal/DefaultConstructorMarker;)V

    return-void
.end method

.method public constructor <init>(Ljava/lang/ref/WeakReference;Lg0/a;)V
    .registers 4
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/ref/WeakReference<",
            "Landroid/app/Activity;",
            ">;",
            "Lg0/a;",
            ")V"
        }
    .end annotation

    const-string v0, "activityRef"

    invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V

    const-string v0, "cycle"

    invoke-static {p2, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V

    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    iput-object p1, p0, Lh0/a;->c:Ljava/lang/ref/WeakReference;

    iput-object p2, p0, Lh0/a;->d:Lg0/a;

    sget-object p1, Lcom/shopee/hamster/base/HamsterContext;->INSTANCE:Lcom/shopee/hamster/base/HamsterContext;

    invoke-virtual {p1}, Lcom/shopee/hamster/base/HamsterContext;->getConfig()Lcom/shopee/hamster/base/apm/api/config/HamsterConfig;

    move-result-object p1

    invoke-virtual {p1}, Lcom/shopee/hamster/base/apm/api/config/HamsterConfig;->getActivityConfig()Lcom/shopee/hamster/base/apm/api/config/module/ActivityConfig;

    move-result-object p1

    invoke-virtual {p1}, Lcom/shopee/hamster/base/apm/api/config/module/ActivityConfig;->getScreenShotRetryCount()J

    move-result-wide p1

    iput-wide p1, p0, Lh0/a;->a:J

    sget-object p1, Lcom/shopee/hamster/base/HamsterContext;->INSTANCE:Lcom/shopee/hamster/base/HamsterContext;

    invoke-virtual {p1}, Lcom/shopee/hamster/base/HamsterContext;->getConfig()Lcom/shopee/hamster/base/apm/api/config/HamsterConfig;

    move-result-object p1

    invoke-virtual {p1}, Lcom/shopee/hamster/base/apm/api/config/HamsterConfig;->getActivityConfig()Lcom/shopee/hamster/base/apm/api/config/module/ActivityConfig;

    move-result-object p1

    invoke-virtual {p1}, Lcom/shopee/hamster/base/apm/api/config/module/ActivityConfig;->getScreenShotInterval()J

    move-result-wide p1

    iput-wide p1, p0, Lh0/a;->b:J

    return-void
.end method

.method public static final synthetic a(Lh0/a;)J
    .registers 3

    iget-wide v0, p0, Lh0/a;->a:J

    return-wide v0
.end method


# virtual methods
.method public run(Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
    .registers 20
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lkotlin/coroutines/Continuation<",
            "-",
            "Lkotlin/Unit;",
            ">;)",
            "Ljava/lang/Object;"
        }
    .end annotation

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    instance-of v2, v1, Lh0/a$b;

    if-eqz v2, :cond_17

    move-object v2, v1

    check-cast v2, Lh0/a$b;

    iget v3, v2, Lh0/a$b;->b:I

    const/high16 v4, -0x80000000

    and-int v5, v3, v4

    if-eqz v5, :cond_17

    sub-int/2addr v3, v4

    iput v3, v2, Lh0/a$b;->b:I

    goto :goto_1c

    :cond_17
    new-instance v2, Lh0/a$b;

    invoke-direct {v2, v0, v1}, Lh0/a$b;-><init>(Lh0/a;Lkotlin/coroutines/Continuation;)V

    :goto_1c
    iget-object v1, v2, Lh0/a$b;->a:Ljava/lang/Object;

    invoke-static {}, Lkotlin/coroutines/intrinsics/IntrinsicsKt__IntrinsicsKt;->getCOROUTINE_SUSPENDED()Ljava/lang/Object;

    move-result-object v3

    iget v4, v2, Lh0/a$b;->b:I

    const-string v5, "ScreenShotDetection"

    const/4 v6, 0x2

    const/4 v7, 0x1

    if-eqz v4, :cond_4f

    if-eq v4, v7, :cond_43

    if-ne v4, v6, :cond_3b

    iget-wide v8, v2, Lh0/a$b;->f:J

    iget-wide v10, v2, Lh0/a$b;->e:J

    iget-object v4, v2, Lh0/a$b;->d:Ljava/lang/Object;

    check-cast v4, Lh0/a;

    invoke-static {v1}, Lkotlin/ResultKt;->throwOnFailure(Ljava/lang/Object;)V

    goto/16 :goto_ca

    :cond_3b
    new-instance v1, Ljava/lang/IllegalStateException;

    const-string v2, "call to \'resume\' before \'invoke\' with coroutine"

    invoke-direct {v1, v2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V

    throw v1

    :cond_43
    iget-wide v8, v2, Lh0/a$b;->f:J

    iget-wide v10, v2, Lh0/a$b;->e:J

    iget-object v4, v2, Lh0/a$b;->d:Ljava/lang/Object;

    check-cast v4, Lh0/a;

    invoke-static {v1}, Lkotlin/ResultKt;->throwOnFailure(Ljava/lang/Object;)V

    goto :goto_7d

    :cond_4f
    invoke-static {v1}, Lkotlin/ResultKt;->throwOnFailure(Ljava/lang/Object;)V

    sget-object v1, Lcom/shopee/hamster/base/log/HamsterLog;->INSTANCE:Lcom/shopee/hamster/base/log/HamsterLog;

    const-string v4, "run is called"

    filled-new-array {v4}, [Ljava/lang/String;

    move-result-object v4

    invoke-virtual {v1, v5, v4}, Lcom/shopee/hamster/base/log/HamsterLog;->d(Ljava/lang/String;[Ljava/lang/String;)V

    const-wide/16 v8, 0x0

    iget-wide v10, v0, Lh0/a;->a:J

    move-object v1, v0

    :goto_62
    cmp-long v4, v8, v10

    if-gez v4, :cond_fd

    iget-wide v12, v1, Lh0/a;->b:J

    iput-object v1, v2, Lh0/a$b;->d:Ljava/lang/Object;

    iput-wide v8, v2, Lh0/a$b;->e:J

    iput-wide v10, v2, Lh0/a$b;->f:J

    iput v7, v2, Lh0/a$b;->b:I

    invoke-static {v12, v13, v2}, Lkotlinx/coroutines/DelayKt;->delay(JLkotlin/coroutines/Continuation;)Ljava/lang/Object;

    move-result-object v4

    if-ne v4, v3, :cond_77

    return-object v3

    :cond_77
    move-object v4, v1

    move-wide/from16 v16, v8

    move-wide v8, v10

    move-wide/from16 v10, v16

    :goto_7d
    sget-object v1, Lcom/shopee/hamster/base/log/HamsterLog;->INSTANCE:Lcom/shopee/hamster/base/log/HamsterLog;

    sget-object v12, Lcom/shopee/hamster/base/apm/api/log/HamsterLogState;->DEBUG:Lcom/shopee/hamster/base/apm/api/log/HamsterLogState;

    invoke-virtual {v1}, Lcom/shopee/hamster/base/log/HamsterLog;->getIntLevel()I

    move-result v1

    invoke-virtual {v12}, Lcom/shopee/hamster/base/apm/api/log/HamsterLogState;->getValue()I

    move-result v12

    if-lt v1, v12, :cond_b6

    sget-object v1, Lcom/shopee/hamster/base/log/HamsterLog;->INSTANCE:Lcom/shopee/hamster/base/log/HamsterLog;

    invoke-virtual {v1}, Lcom/shopee/hamster/base/log/HamsterLog;->getProxy()Lcom/shopee/hamster/logger/ILogger;

    move-result-object v1

    new-array v12, v7, [Ljava/lang/String;

    const/4 v13, 0x0

    new-instance v14, Ljava/lang/StringBuilder;

    invoke-direct {v14}, Ljava/lang/StringBuilder;-><init>()V

    const-string v15, "run: "

    invoke-virtual {v14, v15}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v14, v10, v11}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;

    const/16 v15, 0x2f

    invoke-virtual {v14, v15}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;

    invoke-static {v4}, Lh0/a;->a(Lh0/a;)J

    move-result-wide v6

    invoke-virtual {v14, v6, v7}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;

    invoke-virtual {v14}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v6

    aput-object v6, v12, v13

    invoke-interface {v1, v5, v12}, Lcom/shopee/hamster/logger/ILogger;->d(Ljava/lang/String;[Ljava/lang/String;)V

    :cond_b6
    sget-object v1, Lh0/c;->b:Lh0/c;

    iget-object v6, v4, Lh0/a;->c:Ljava/lang/ref/WeakReference;

    iput-object v4, v2, Lh0/a$b;->d:Ljava/lang/Object;

    iput-wide v10, v2, Lh0/a$b;->e:J

    iput-wide v8, v2, Lh0/a$b;->f:J

    const/4 v7, 0x2

    iput v7, v2, Lh0/a$b;->b:I

    invoke-virtual {v1, v6, v2}, Lh0/c;->b(Ljava/lang/ref/WeakReference;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;

    move-result-object v1

    if-ne v1, v3, :cond_ca

    return-object v3

    :cond_ca
    :goto_ca
    check-cast v1, Lh0/c$a;

    invoke-virtual {v1}, Lh0/c$a;->b()Lcom/argusapm/android/core/job/activity/monitor/DetectEndType;

    move-result-object v6

    iget-object v7, v4, Lh0/a;->d:Lg0/a;

    invoke-virtual {v7, v6}, Lg0/a;->a(Lcom/argusapm/android/core/job/activity/monitor/DetectEndType;)V

    sget-object v7, Lh0/b;->$EnumSwitchMapping$0:[I

    invoke-virtual {v6}, Ljava/lang/Enum;->ordinal()I

    move-result v6

    aget v6, v7, v6

    const/4 v7, 0x1

    if-eq v6, v7, :cond_e7

    const/4 v12, 0x2

    if-eq v6, v12, :cond_e4

    goto :goto_f1

    :cond_e4
    sget-object v1, Lkotlin/Unit;->INSTANCE:Lkotlin/Unit;

    return-object v1

    :cond_e7
    const/4 v12, 0x2

    invoke-virtual {v1}, Lh0/c$a;->c()J

    move-result-wide v13

    iget-object v1, v4, Lh0/a;->d:Lg0/a;

    invoke-virtual {v1, v13, v14}, Lg0/a;->c(J)V

    :goto_f1
    const-wide/16 v13, 0x1

    add-long/2addr v10, v13

    move-object v1, v4

    const/4 v6, 0x2

    move-wide/from16 v16, v8

    move-wide v8, v10

    move-wide/from16 v10, v16

    goto/16 :goto_62

    :cond_fd
    sget-object v1, Lkotlin/Unit;->INSTANCE:Lkotlin/Unit;

    return-object v1
.end method