InactivityTimer.smali
.class final Lcom/king/zxing/InactivityTimer;
.super Ljava/lang/Object;
.source "InactivityTimer.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/king/zxing/InactivityTimer$InactivityAsyncTask;,
Lcom/king/zxing/InactivityTimer$PowerStatusReceiver;
}
.end annotation
# static fields
.field private static final INACTIVITY_DELAY_MS:J = 0x493e0L
.field private static final TAG:Ljava/lang/String;
# instance fields
.field private final activity:Landroid/app/Activity;
.field private inactivityTask:Landroid/os/AsyncTask;
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroid/os/AsyncTask<",
"Ljava/lang/Object;",
"Ljava/lang/Object;",
"Ljava/lang/Object;",
">;"
}
.end annotation
.end field
.field private final powerStatusReceiver:Landroid/content/BroadcastReceiver;
.field private registered:Z
# direct methods
.method static constructor <clinit>()V
.registers 1
.line 38
const-class v0, Lcom/king/zxing/InactivityTimer;
invoke-virtual {v0}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
move-result-object v0
sput-object v0, Lcom/king/zxing/InactivityTimer;->TAG:Ljava/lang/String;
return-void
.end method
.method constructor <init>(Landroid/app/Activity;)V
.registers 3
.param p1, "activity" # Landroid/app/Activity;
.line 47
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 48
iput-object p1, p0, Lcom/king/zxing/InactivityTimer;->activity:Landroid/app/Activity;
.line 49
new-instance v0, Lcom/king/zxing/InactivityTimer$PowerStatusReceiver;
invoke-direct {v0, p0}, Lcom/king/zxing/InactivityTimer$PowerStatusReceiver;-><init>(Lcom/king/zxing/InactivityTimer;)V
iput-object v0, p0, Lcom/king/zxing/InactivityTimer;->powerStatusReceiver:Landroid/content/BroadcastReceiver;
.line 50
const/4 v0, 0x0
iput-boolean v0, p0, Lcom/king/zxing/InactivityTimer;->registered:Z
.line 51
invoke-virtual {p0}, Lcom/king/zxing/InactivityTimer;->onActivity()V
.line 52
return-void
.end method
.method static synthetic access$000(Lcom/king/zxing/InactivityTimer;)V
.registers 1
.param p0, "x0" # Lcom/king/zxing/InactivityTimer;
.line 36
invoke-direct {p0}, Lcom/king/zxing/InactivityTimer;->cancel()V
return-void
.end method
.method private cancel()V
.registers 3
.line 85
iget-object v0, p0, Lcom/king/zxing/InactivityTimer;->inactivityTask:Landroid/os/AsyncTask;
.line 86
.local v0, "task":Landroid/os/AsyncTask;, "Landroid/os/AsyncTask<***>;"
if-eqz v0, :cond_b
.line 87
const/4 v1, 0x1
invoke-virtual {v0, v1}, Landroid/os/AsyncTask;->cancel(Z)Z
.line 88
const/4 v1, 0x0
iput-object v1, p0, Lcom/king/zxing/InactivityTimer;->inactivityTask:Landroid/os/AsyncTask;
.line 90
:cond_b
return-void
.end method
# virtual methods
.method onActivity()V
.registers 4
.line 55
invoke-direct {p0}, Lcom/king/zxing/InactivityTimer;->cancel()V
.line 56
new-instance v0, Lcom/king/zxing/InactivityTimer$InactivityAsyncTask;
iget-object v1, p0, Lcom/king/zxing/InactivityTimer;->activity:Landroid/app/Activity;
invoke-direct {v0, v1}, Lcom/king/zxing/InactivityTimer$InactivityAsyncTask;-><init>(Landroid/app/Activity;)V
iput-object v0, p0, Lcom/king/zxing/InactivityTimer;->inactivityTask:Landroid/os/AsyncTask;
.line 58
:try_start_c
sget-object v1, Landroid/os/AsyncTask;->THREAD_POOL_EXECUTOR:Ljava/util/concurrent/Executor;
const/4 v2, 0x0
new-array v2, v2, [Ljava/lang/Object;
invoke-virtual {v0, v1, v2}, Landroid/os/AsyncTask;->executeOnExecutor(Ljava/util/concurrent/Executor;[Ljava/lang/Object;)Landroid/os/AsyncTask;
:try_end_14
.catch Ljava/util/concurrent/RejectedExecutionException; {:try_start_c .. :try_end_14} :catch_15
.line 61
goto :goto_1b
.line 59
:catch_15
move-exception v0
.line 60
.local v0, "ree":Ljava/util/concurrent/RejectedExecutionException;
const-string v1, "Couldn\'t schedule inactivity task; ignoring"
invoke-static {v1}, Lcom/king/zxing/util/LogUtils;->w(Ljava/lang/String;)V
.line 62
.end local v0 # "ree":Ljava/util/concurrent/RejectedExecutionException;
:goto_1b
return-void
.end method
.method onPause()V
.registers 3
.line 65
invoke-direct {p0}, Lcom/king/zxing/InactivityTimer;->cancel()V
.line 66
iget-boolean v0, p0, Lcom/king/zxing/InactivityTimer;->registered:Z
if-eqz v0, :cond_12
.line 67
iget-object v0, p0, Lcom/king/zxing/InactivityTimer;->activity:Landroid/app/Activity;
iget-object v1, p0, Lcom/king/zxing/InactivityTimer;->powerStatusReceiver:Landroid/content/BroadcastReceiver;
invoke-virtual {v0, v1}, Landroid/app/Activity;->unregisterReceiver(Landroid/content/BroadcastReceiver;)V
.line 68
const/4 v0, 0x0
iput-boolean v0, p0, Lcom/king/zxing/InactivityTimer;->registered:Z
goto :goto_17
.line 70
:cond_12
const-string v0, "PowerStatusReceiver was never registered?"
invoke-static {v0}, Lcom/king/zxing/util/LogUtils;->w(Ljava/lang/String;)V
.line 72
:goto_17
return-void
.end method
.method onResume()V
.registers 5
.line 75
iget-boolean v0, p0, Lcom/king/zxing/InactivityTimer;->registered:Z
if-eqz v0, :cond_a
.line 76
const-string v0, "PowerStatusReceiver was already registered?"
invoke-static {v0}, Lcom/king/zxing/util/LogUtils;->w(Ljava/lang/String;)V
goto :goto_1b
.line 78
:cond_a
iget-object v0, p0, Lcom/king/zxing/InactivityTimer;->activity:Landroid/app/Activity;
iget-object v1, p0, Lcom/king/zxing/InactivityTimer;->powerStatusReceiver:Landroid/content/BroadcastReceiver;
new-instance v2, Landroid/content/IntentFilter;
const-string v3, "android.intent.action.BATTERY_CHANGED"
invoke-direct {v2, v3}, Landroid/content/IntentFilter;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, v1, v2}, Landroid/app/Activity;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
.line 79
const/4 v0, 0x1
iput-boolean v0, p0, Lcom/king/zxing/InactivityTimer;->registered:Z
.line 81
:goto_1b
invoke-virtual {p0}, Lcom/king/zxing/InactivityTimer;->onActivity()V
.line 82
return-void
.end method
.method shutdown()V
.registers 1
.line 93
invoke-direct {p0}, Lcom/king/zxing/InactivityTimer;->cancel()V
.line 94
return-void
.end method