aei.smali

.class public Ldxoptimizer/aei;
.super Ljava/lang/Object;
.source "AppsMonitor.java"

# interfaces
.implements Ldxoptimizer/cbq$a;
.implements Ldxoptimizer/cbr$a;
.implements Ljava/lang/Runnable;


# static fields
.field private static volatile o:Ldxoptimizer/aei;


# instance fields
.field private a:Landroid/content/Context;

.field private b:Landroid/app/ActivityManager;

.field private c:Ldxoptimizer/bho;

.field private d:Ldxoptimizer/bhs;

.field private e:Z

.field private f:Landroid/os/Handler;

.field private g:Ljava/lang/String;

.field private h:I

.field private i:Ljava/lang/String;

.field private j:I

.field private k:Z

.field private l:J

.field private m:Landroid/view/View;

.field private n:Z


# direct methods
.method private constructor <init>(Landroid/content/Context;)V
    .registers 3

    .prologue
    const/4 v0, -0x1

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

    .line 68
    iput v0, p0, Ldxoptimizer/aei;->h:I

    .line 70
    iput v0, p0, Ldxoptimizer/aei;->j:I

    .line 73
    const/4 v0, 0x1

    iput-boolean v0, p0, Ldxoptimizer/aei;->k:Z

    .line 79
    const/4 v0, 0x0

    iput-boolean v0, p0, Ldxoptimizer/aei;->n:Z

    .line 84
    invoke-virtual {p1}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;

    move-result-object v0

    iput-object v0, p0, Ldxoptimizer/aei;->a:Landroid/content/Context;

    .line 85
    iget-object v0, p0, Ldxoptimizer/aei;->a:Landroid/content/Context;

    invoke-static {v0}, Ldxoptimizer/cfb;->b(Landroid/content/Context;)Landroid/app/ActivityManager;

    move-result-object v0

    iput-object v0, p0, Ldxoptimizer/aei;->b:Landroid/app/ActivityManager;

    .line 86
    invoke-static {}, Ldxoptimizer/bhs;->a()Ldxoptimizer/bhs;

    move-result-object v0

    iput-object v0, p0, Ldxoptimizer/aei;->d:Ldxoptimizer/bhs;

    .line 87
    invoke-static {}, Ldxoptimizer/bho;->b()Ldxoptimizer/bho;

    move-result-object v0

    iput-object v0, p0, Ldxoptimizer/aei;->c:Ldxoptimizer/bho;

    .line 88
    return-void
.end method

.method static synthetic a(Ldxoptimizer/aei;Landroid/view/View;)Landroid/view/View;
    .registers 2

    .prologue
    .line 45
    iput-object p1, p0, Ldxoptimizer/aei;->m:Landroid/view/View;

    return-object p1
.end method

.method public static a(Landroid/content/Context;)Ldxoptimizer/aei;
    .registers 3

    .prologue
    .line 91
    sget-object v0, Ldxoptimizer/aei;->o:Ldxoptimizer/aei;

    if-nez v0, :cond_13

    .line 92
    const-class v1, Ldxoptimizer/aei;

    monitor-enter v1

    .line 93
    :try_start_7
    sget-object v0, Ldxoptimizer/aei;->o:Ldxoptimizer/aei;

    if-nez v0, :cond_12

    .line 94
    new-instance v0, Ldxoptimizer/aei;

    invoke-direct {v0, p0}, Ldxoptimizer/aei;-><init>(Landroid/content/Context;)V

    sput-object v0, Ldxoptimizer/aei;->o:Ldxoptimizer/aei;

    .line 96
    :cond_12
    monitor-exit v1
    :try_end_13
    .catchall {:try_start_7 .. :try_end_13} :catchall_16

    .line 98
    :cond_13
    sget-object v0, Ldxoptimizer/aei;->o:Ldxoptimizer/aei;

    return-object v0

    .line 96
    :catchall_16
    move-exception v0

    :try_start_17
    monitor-exit v1
    :try_end_18
    .catchall {:try_start_17 .. :try_end_18} :catchall_16

    throw v0
.end method

.method static synthetic a(Ldxoptimizer/aei;)Ldxoptimizer/bho;
    .registers 2

    .prologue
    .line 45
    iget-object v0, p0, Ldxoptimizer/aei;->c:Ldxoptimizer/bho;

    return-object v0
.end method

.method private a(Ldxoptimizer/aej;)V
    .registers 8

    .prologue
    .line 206
    invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J

    move-result-wide v0

    .line 208
    iget-object v2, p0, Ldxoptimizer/aei;->d:Ldxoptimizer/bhs;

    iget-boolean v3, p0, Ldxoptimizer/aei;->k:Z

    invoke-virtual {v2, v3}, Ldxoptimizer/bhs;->b(Z)V

    .line 210
    iget-boolean v2, p0, Ldxoptimizer/aei;->k:Z

    if-eqz v2, :cond_15

    .line 212
    invoke-direct {p0}, Ldxoptimizer/aei;->f()V

    .line 214
    invoke-direct {p0}, Ldxoptimizer/aei;->h()V

    .line 217
    :cond_15
    iget-wide v2, p0, Ldxoptimizer/aei;->l:J

    const-wide/32 v4, 0x668a0

    add-long/2addr v2, v4

    cmp-long v2, v0, v2

    if-ltz v2, :cond_24

    .line 218
    invoke-direct {p0}, Ldxoptimizer/aei;->d()V

    .line 219
    iput-wide v0, p0, Ldxoptimizer/aei;->l:J

    .line 231
    :cond_24
    return-void
.end method

.method private a(Ljava/lang/String;ILjava/lang/String;I)V
    .registers 12

    .prologue
    .line 276
    iget-object v6, p0, Ldxoptimizer/aei;->f:Landroid/os/Handler;

    new-instance v0, Ldxoptimizer/aei$1;

    move-object v1, p0

    move v2, p2

    move v3, p4

    move-object v4, p3

    move-object v5, p1

    invoke-direct/range {v0 .. v5}, Ldxoptimizer/aei$1;-><init>(Ldxoptimizer/aei;IILjava/lang/String;Ljava/lang/String;)V

    invoke-virtual {v6, v0}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z

    .line 296
    return-void
.end method

.method static synthetic b(Ldxoptimizer/aei;)Landroid/content/Context;
    .registers 2

    .prologue
    .line 45
    iget-object v0, p0, Ldxoptimizer/aei;->a:Landroid/content/Context;

    return-object v0
.end method

.method private b(Z)V
    .registers 4

    .prologue
    .line 138
    iget-object v0, p0, Ldxoptimizer/aei;->a:Landroid/content/Context;

    invoke-static {v0}, Ldxoptimizer/bjy;->a(Landroid/content/Context;)Z

    move-result v0

    if-nez v0, :cond_9

    .line 146
    :cond_8
    :goto_8
    return-void

    .line 139
    :cond_9
    iget-object v0, p0, Ldxoptimizer/aei;->a:Landroid/content/Context;

    invoke-static {v0}, Ldxoptimizer/bkb;->b(Landroid/content/Context;)Z

    move-result v0

    if-eqz v0, :cond_8

    .line 141
    if-nez p1, :cond_8

    .line 143
    iget-object v0, p0, Ldxoptimizer/aei;->a:Landroid/content/Context;

    const/4 v1, 0x0

    invoke-static {v0, v1}, Ldxoptimizer/bgi;->c(Landroid/content/Context;Z)V

    goto :goto_8
.end method

.method static synthetic c(Ldxoptimizer/aei;)Landroid/view/View;
    .registers 2

    .prologue
    .line 45
    iget-object v0, p0, Ldxoptimizer/aei;->m:Landroid/view/View;

    return-object v0
.end method

.method private c()V
    .registers 3

    .prologue
    .line 116
    iget-object v0, p0, Ldxoptimizer/aei;->a:Landroid/content/Context;

    invoke-static {v0}, Ldxoptimizer/bhh;->a(Landroid/content/Context;)Z

    move-result v0

    if-nez v0, :cond_15

    .line 117
    invoke-static {}, Ldxoptimizer/bhp;->a()Ldxoptimizer/bhp;

    move-result-object v0

    invoke-virtual {v0}, Ldxoptimizer/bhp;->b()V

    .line 118
    iget-object v0, p0, Ldxoptimizer/aei;->a:Landroid/content/Context;

    const/4 v1, 0x1

    invoke-static {v0, v1}, Ldxoptimizer/bhh;->a(Landroid/content/Context;Z)V

    .line 120
    :cond_15
    return-void
.end method

.method private d()V
    .registers 2

    .prologue
    .line 236
    invoke-static {}, Ljava/lang/Runtime;->getRuntime()Ljava/lang/Runtime;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/Runtime;->gc()V

    .line 237
    invoke-direct {p0}, Ldxoptimizer/aei;->e()V

    .line 238
    invoke-static {}, Ljava/lang/System;->runFinalization()V

    .line 239
    return-void
.end method

.method private e()V
    .registers 3

    .prologue
    .line 245
    const-wide/16 v0, 0x64

    :try_start_2
    invoke-static {v0, v1}, Ljava/lang/Thread;->sleep(J)V
    :try_end_5
    .catch Ljava/lang/InterruptedException; {:try_start_2 .. :try_end_5} :catch_6

    .line 248
    :goto_5
    return-void

    .line 246
    :catch_6
    move-exception v0

    goto :goto_5
.end method

.method private f()V
    .registers 5

    .prologue
    const/4 v1, -0x1

    .line 251
    iget-object v0, p0, Ldxoptimizer/aei;->i:Ljava/lang/String;

    if-eqz v0, :cond_27

    .line 253
    invoke-static {}, Ldxoptimizer/aep;->a()Ldxoptimizer/aep;

    move-result-object v0

    iget-object v2, p0, Ldxoptimizer/aei;->i:Ljava/lang/String;

    invoke-virtual {v0, v2}, Ldxoptimizer/aep;->c(Ljava/lang/String;)Ldxoptimizer/aeo;

    move-result-object v0

    .line 254
    if-eqz v0, :cond_48

    .line 255
    invoke-virtual {v0}, Ldxoptimizer/aeo;->e()I

    move-result v0

    .line 258
    :goto_15
    iget-object v2, p0, Ldxoptimizer/aei;->g:Ljava/lang/String;

    if-nez v2, :cond_28

    if-ltz v0, :cond_28

    .line 259
    iget-object v2, p0, Ldxoptimizer/aei;->i:Ljava/lang/String;

    iput-object v2, p0, Ldxoptimizer/aei;->g:Ljava/lang/String;

    .line 260
    iput v0, p0, Ldxoptimizer/aei;->h:I

    .line 261
    const/4 v2, 0x0

    iget-object v3, p0, Ldxoptimizer/aei;->i:Ljava/lang/String;

    invoke-direct {p0, v2, v1, v3, v0}, Ldxoptimizer/aei;->a(Ljava/lang/String;ILjava/lang/String;I)V

    .line 270
    :cond_27
    :goto_27
    return-void

    .line 262
    :cond_28
    iget-object v1, p0, Ldxoptimizer/aei;->g:Ljava/lang/String;

    if-eqz v1, :cond_27

    iget-object v1, p0, Ldxoptimizer/aei;->g:Ljava/lang/String;

    iget-object v2, p0, Ldxoptimizer/aei;->i:Ljava/lang/String;

    invoke-virtual {v1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v1

    if-nez v1, :cond_27

    if-ltz v0, :cond_27

    .line 264
    iget-object v1, p0, Ldxoptimizer/aei;->g:Ljava/lang/String;

    iget v2, p0, Ldxoptimizer/aei;->h:I

    iget-object v3, p0, Ldxoptimizer/aei;->i:Ljava/lang/String;

    invoke-direct {p0, v1, v2, v3, v0}, Ldxoptimizer/aei;->a(Ljava/lang/String;ILjava/lang/String;I)V

    .line 266
    iget-object v1, p0, Ldxoptimizer/aei;->i:Ljava/lang/String;

    iput-object v1, p0, Ldxoptimizer/aei;->g:Ljava/lang/String;

    .line 267
    iput v0, p0, Ldxoptimizer/aei;->h:I

    goto :goto_27

    :cond_48
    move v0, v1

    goto :goto_15
.end method

.method private g()V
    .registers 2

    .prologue
    .line 299
    new-instance v0, Ldxoptimizer/aei$2;

    invoke-direct {v0, p0}, Ldxoptimizer/aei$2;-><init>(Ldxoptimizer/aei;)V

    invoke-static {v0}, Ldxoptimizer/cct;->a(Ljava/lang/Runnable;)V

    .line 332
    return-void
.end method

.method private h()V
    .registers 5

    .prologue
    .line 334
    iget-object v0, p0, Ldxoptimizer/aei;->m:Landroid/view/View;

    if-eqz v0, :cond_35

    .line 335
    new-instance v0, Landroid/graphics/Rect;

    invoke-direct {v0}, Landroid/graphics/Rect;-><init>()V

    .line 336
    iget-object v1, p0, Ldxoptimizer/aei;->m:Landroid/view/View;

    invoke-virtual {v1}, Landroid/view/View;->getRootView()Landroid/view/View;

    move-result-object v1

    invoke-virtual {v1, v0}, Landroid/view/View;->getWindowVisibleDisplayFrame(Landroid/graphics/Rect;)V

    .line 337
    iget v0, v0, Landroid/graphics/Rect;->top:I

    if-nez v0, :cond_36

    const/4 v0, 0x1

    .line 341
    :goto_17
    iget-boolean v1, p0, Ldxoptimizer/aei;->n:Z

    if-eq v0, v1, :cond_35

    .line 344
    :try_start_1b
    new-instance v1, Landroid/content/Intent;

    const-string v2, "action.fullscreen.changestate"

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

    .line 345
    const-string v2, "old_state"

    iget-boolean v3, p0, Ldxoptimizer/aei;->n:Z

    invoke-virtual {v1, v2, v3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Z)Landroid/content/Intent;

    .line 346
    const-string v2, "new_state"

    invoke-virtual {v1, v2, v0}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Z)Landroid/content/Intent;

    .line 347
    iput-boolean v0, p0, Ldxoptimizer/aei;->n:Z

    .line 348
    iget-object v0, p0, Ldxoptimizer/aei;->a:Landroid/content/Context;

    invoke-static {v0, v1}, Ldxoptimizer/cga;->a(Landroid/content/Context;Landroid/content/Intent;)V
    :try_end_35
    .catch Ljava/lang/ClassCastException; {:try_start_1b .. :try_end_35} :catch_38

    .line 356
    :cond_35
    :goto_35
    return-void

    .line 337
    :cond_36
    const/4 v0, 0x0

    goto :goto_17

    .line 349
    :catch_38
    move-exception v0

    goto :goto_35
.end method

.method private i()V
    .registers 2

    .prologue
    .line 358
    new-instance v0, Ldxoptimizer/aei$3;

    invoke-direct {v0, p0}, Ldxoptimizer/aei$3;-><init>(Ldxoptimizer/aei;)V

    invoke-static {v0}, Ldxoptimizer/cct;->a(Ljava/lang/Runnable;)V

    .line 370
    return-void
.end method


# virtual methods
.method public declared-synchronized a()V
    .registers 3

    .prologue
    .line 102
    monitor-enter p0

    :try_start_1
    iget-object v0, p0, Ldxoptimizer/aei;->d:Ldxoptimizer/bhs;

    invoke-virtual {v0}, Ldxoptimizer/bhs;->c()V

    .line 104
    iget-boolean v0, p0, Ldxoptimizer/aei;->e:Z

    if-nez v0, :cond_2c

    .line 105
    const/4 v0, 0x1

    iput-boolean v0, p0, Ldxoptimizer/aei;->e:Z

    .line 107
    new-instance v0, Landroid/os/HandlerThread;

    const-string v1, "AppsMonitorEvents"

    invoke-direct {v0, v1}, Landroid/os/HandlerThread;-><init>(Ljava/lang/String;)V

    .line 108
    invoke-virtual {v0}, Landroid/os/HandlerThread;->start()V

    .line 109
    new-instance v1, Landroid/os/Handler;

    invoke-virtual {v0}, Landroid/os/HandlerThread;->getLooper()Landroid/os/Looper;

    move-result-object v0

    invoke-direct {v1, v0}, Landroid/os/Handler;-><init>(Landroid/os/Looper;)V

    iput-object v1, p0, Ldxoptimizer/aei;->f:Landroid/os/Handler;

    .line 111
    new-instance v0, Ljava/lang/Thread;

    const-string v1, "AppsMonitor"

    invoke-direct {v0, p0, v1}, Ljava/lang/Thread;-><init>(Ljava/lang/Runnable;Ljava/lang/String;)V

    invoke-virtual {v0}, Ljava/lang/Thread;->start()V
    :try_end_2c
    .catchall {:try_start_1 .. :try_end_2c} :catchall_2e

    .line 113
    :cond_2c
    monitor-exit p0

    return-void

    .line 102
    :catchall_2e
    move-exception v0

    monitor-exit p0

    throw v0
.end method

.method public a(Ljava/lang/String;Ljava/lang/String;)V
    .registers 4

    .prologue
    .line 155
    iput-object p1, p0, Ldxoptimizer/aei;->i:Ljava/lang/String;

    .line 156
    iget-object v0, p0, Ldxoptimizer/aei;->a:Landroid/content/Context;

    invoke-static {v0, p1}, Ldxoptimizer/byt;->c(Landroid/content/Context;Ljava/lang/String;)V

    .line 157
    return-void
.end method

.method public a(Z)V
    .registers 6

    .prologue
    .line 124
    iput-boolean p1, p0, Ldxoptimizer/aei;->k:Z

    .line 125
    iget-object v0, p0, Ldxoptimizer/aei;->c:Ldxoptimizer/bho;

    invoke-virtual {v0, p1}, Ldxoptimizer/bho;->b(Z)V

    .line 127
    iget-boolean v0, p0, Ldxoptimizer/aei;->e:Z

    if-eqz v0, :cond_1e

    iget-boolean v0, p0, Ldxoptimizer/aei;->k:Z

    if-eqz v0, :cond_1e

    .line 128
    iget-object v0, p0, Ldxoptimizer/aei;->a:Landroid/content/Context;

    invoke-static {v0}, Ldxoptimizer/cbq;->a(Landroid/content/Context;)Ldxoptimizer/cbq;

    move-result-object v0

    const-wide/16 v2, 0xbb8

    invoke-virtual {v0, p0, v2, v3}, Ldxoptimizer/cbq;->a(Ldxoptimizer/cbq$a;J)V

    .line 133
    :goto_1a
    invoke-direct {p0, p1}, Ldxoptimizer/aei;->b(Z)V

    .line 134
    return-void

    .line 130
    :cond_1e
    iget-object v0, p0, Ldxoptimizer/aei;->a:Landroid/content/Context;

    invoke-static {v0}, Ldxoptimizer/cbq;->a(Landroid/content/Context;)Ldxoptimizer/cbq;

    move-result-object v0

    invoke-virtual {v0, p0}, Ldxoptimizer/cbq;->a(Ldxoptimizer/cbq$a;)V

    goto :goto_1a
.end method

.method public b()V
    .registers 1

    .prologue
    .line 151
    return-void
.end method

.method public run()V
    .registers 7

    .prologue
    const-wide/16 v4, 0xbb8

    .line 163
    invoke-direct {p0}, Ldxoptimizer/aei;->c()V

    .line 166
    iget-object v0, p0, Ldxoptimizer/aei;->a:Landroid/content/Context;

    const-string v1, "power"

    invoke-virtual {v0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Landroid/os/PowerManager;

    .line 167
    invoke-static {v0}, Ldxoptimizer/po;->a(Landroid/os/PowerManager;)Z

    move-result v0

    iput-boolean v0, p0, Ldxoptimizer/aei;->k:Z

    .line 170
    invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J

    move-result-wide v0

    .line 172
    iput-wide v0, p0, Ldxoptimizer/aei;->l:J

    .line 173
    new-instance v2, Ldxoptimizer/aej;

    invoke-direct {v2}, Ldxoptimizer/aej;-><init>()V

    .line 174
    iput-wide v0, v2, Ldxoptimizer/aej;->a:J

    .line 176
    iget-object v0, p0, Ldxoptimizer/aei;->d:Ldxoptimizer/bhs;

    iget-boolean v1, p0, Ldxoptimizer/aei;->k:Z

    invoke-virtual {v0, v1}, Ldxoptimizer/bhs;->c(Z)V

    .line 178
    invoke-static {}, Ldxoptimizer/cbr;->a()Ldxoptimizer/cbr;

    move-result-object v0

    invoke-virtual {v0, p0}, Ldxoptimizer/cbr;->a(Ldxoptimizer/cbr$a;)V

    .line 179
    iget-boolean v0, p0, Ldxoptimizer/aei;->e:Z

    if-eqz v0, :cond_41

    iget-boolean v0, p0, Ldxoptimizer/aei;->k:Z

    if-eqz v0, :cond_41

    .line 180
    iget-object v0, p0, Ldxoptimizer/aei;->a:Landroid/content/Context;

    invoke-static {v0}, Ldxoptimizer/cbq;->a(Landroid/content/Context;)Ldxoptimizer/cbq;

    move-result-object v0

    invoke-virtual {v0, p0, v4, v5}, Ldxoptimizer/cbq;->a(Ldxoptimizer/cbq$a;J)V

    .line 184
    :cond_41
    invoke-direct {p0}, Ldxoptimizer/aei;->g()V

    .line 188
    :goto_44
    iget-boolean v0, p0, Ldxoptimizer/aei;->e:Z

    if-eqz v0, :cond_53

    .line 189
    invoke-direct {p0, v2}, Ldxoptimizer/aei;->a(Ldxoptimizer/aej;)V

    .line 191
    const-wide/16 v0, 0xbb8

    :try_start_4d
    invoke-static {v0, v1}, Ljava/lang/Thread;->sleep(J)V
    :try_end_50
    .catch Ljava/lang/InterruptedException; {:try_start_4d .. :try_end_50} :catch_51

    goto :goto_44

    .line 192
    :catch_51
    move-exception v0

    goto :goto_44

    .line 197
    :cond_53
    invoke-direct {p0}, Ldxoptimizer/aei;->i()V

    .line 198
    iget-object v0, p0, Ldxoptimizer/aei;->d:Ldxoptimizer/bhs;

    invoke-virtual {v0}, Ldxoptimizer/bhs;->d()V

    .line 199
    invoke-static {}, Ldxoptimizer/cbr;->a()Ldxoptimizer/cbr;

    move-result-object v0

    invoke-virtual {v0, p0}, Ldxoptimizer/cbr;->b(Ldxoptimizer/cbr$a;)V

    .line 200
    iget-object v0, p0, Ldxoptimizer/aei;->a:Landroid/content/Context;

    invoke-static {v0}, Ldxoptimizer/cbq;->a(Landroid/content/Context;)Ldxoptimizer/cbq;

    move-result-object v0

    invoke-virtual {v0, p0}, Ldxoptimizer/cbq;->a(Ldxoptimizer/cbq$a;)V

    .line 203
    return-void
.end method