wb.smali
.class public Ldxoptimizer/wb;
.super Ljava/lang/Object;
.source "DXCoreServiceInteractor.java"
# static fields
.field private static volatile g:Ldxoptimizer/wb;
# instance fields
.field final a:Landroid/os/Messenger;
.field private b:Landroid/content/Context;
.field private c:Z
.field private d:Landroid/os/Messenger;
.field private e:Ljava/util/concurrent/CopyOnWriteArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/CopyOnWriteArrayList",
"<",
"Ldxoptimizer/we;",
">;"
}
.end annotation
.end field
.field private f:Z
.field private h:Landroid/content/ServiceConnection;
# direct methods
.method private constructor <init>(Landroid/content/Context;)V
.registers 6
.prologue
const/4 v3, 0x0
.line 48
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 57
new-instance v0, Landroid/os/Messenger;
new-instance v1, Landroid/os/Handler;
invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper;
move-result-object v2
invoke-direct {v1, v2}, Landroid/os/Handler;-><init>(Landroid/os/Looper;)V
invoke-direct {v0, v1}, Landroid/os/Messenger;-><init>(Landroid/os/Handler;)V
iput-object v0, p0, Ldxoptimizer/wb;->a:Landroid/os/Messenger;
.line 125
new-instance v0, Ldxoptimizer/wb$1;
invoke-direct {v0, p0}, Ldxoptimizer/wb$1;-><init>(Ldxoptimizer/wb;)V
iput-object v0, p0, Ldxoptimizer/wb;->h:Landroid/content/ServiceConnection;
.line 49
invoke-virtual {p1}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object v0
iput-object v0, p0, Ldxoptimizer/wb;->b:Landroid/content/Context;
.line 50
iput-boolean v3, p0, Ldxoptimizer/wb;->c:Z
.line 51
const/4 v0, 0x0
iput-object v0, p0, Ldxoptimizer/wb;->d:Landroid/os/Messenger;
.line 52
new-instance v0, Ljava/util/concurrent/CopyOnWriteArrayList;
invoke-direct {v0}, Ljava/util/concurrent/CopyOnWriteArrayList;-><init>()V
iput-object v0, p0, Ldxoptimizer/wb;->e:Ljava/util/concurrent/CopyOnWriteArrayList;
.line 53
iput-boolean v3, p0, Ldxoptimizer/wb;->f:Z
.line 54
invoke-virtual {p0}, Ldxoptimizer/wb;->a()V
.line 55
return-void
.end method
.method static synthetic a(Ldxoptimizer/wb;Landroid/os/Messenger;)Landroid/os/Messenger;
.registers 2
.prologue
.line 22
iput-object p1, p0, Ldxoptimizer/wb;->d:Landroid/os/Messenger;
return-object p1
.end method
.method public static a(Landroid/content/Context;)Ldxoptimizer/wb;
.registers 3
.prologue
.line 39
const-class v1, Ldxoptimizer/wb;
monitor-enter v1
.line 40
:try_start_3
sget-object v0, Ldxoptimizer/wb;->g:Ldxoptimizer/wb;
if-nez v0, :cond_e
.line 41
new-instance v0, Ldxoptimizer/wb;
invoke-direct {v0, p0}, Ldxoptimizer/wb;-><init>(Landroid/content/Context;)V
sput-object v0, Ldxoptimizer/wb;->g:Ldxoptimizer/wb;
.line 43
:cond_e
monitor-exit v1
:try_end_f
.catchall {:try_start_3 .. :try_end_f} :catchall_12
.line 45
sget-object v0, Ldxoptimizer/wb;->g:Ldxoptimizer/wb;
return-object v0
.line 43
:catchall_12
move-exception v0
:try_start_13
monitor-exit v1
:try_end_14
.catchall {:try_start_13 .. :try_end_14} :catchall_12
throw v0
.end method
.method private a(Landroid/os/Message;)Z
.registers 7
.prologue
const/4 v1, 0x0
.line 108
const/4 v0, 0x1
.line 110
:try_start_2
iget-object v2, p0, Ldxoptimizer/wb;->d:Landroid/os/Messenger;
invoke-virtual {v2, p1}, Landroid/os/Messenger;->send(Landroid/os/Message;)V
:try_end_7
.catch Landroid/os/RemoteException; {:try_start_2 .. :try_end_7} :catch_8
.catch Ljava/lang/Exception; {:try_start_2 .. :try_end_7} :catch_2b
.line 122
:goto_7
return v0
.line 111
:catch_8
move-exception v0
.line 112
sget-boolean v2, Ldxoptimizer/xa;->d:Z
if-eqz v2, :cond_29
.line 113
const-string v2, "stat.DXServiceInterator"
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1}, Landroid/os/Message;->toString()Ljava/lang/String;
move-result-object v4
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
const-string v4, " has RemoteException!"
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-static {v2, v3, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
:cond_29
move v0, v1
.line 121
goto :goto_7
.line 116
:catch_2b
move-exception v0
.line 117
sget-boolean v2, Ldxoptimizer/xa;->d:Z
if-eqz v2, :cond_4c
.line 118
const-string v2, "stat.DXServiceInterator"
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1}, Landroid/os/Message;->toString()Ljava/lang/String;
move-result-object v4
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
const-string v4, " has Exception!"
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-static {v2, v3, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
:cond_4c
move v0, v1
.line 120
goto :goto_7
.end method
.method static synthetic a(Ldxoptimizer/wb;)Z
.registers 2
.prologue
.line 22
iget-boolean v0, p0, Ldxoptimizer/wb;->f:Z
return v0
.end method
.method static synthetic a(Ldxoptimizer/wb;Z)Z
.registers 2
.prologue
.line 22
iput-boolean p1, p0, Ldxoptimizer/wb;->c:Z
return p1
.end method
.method static synthetic b(Ldxoptimizer/wb;)Ljava/util/concurrent/CopyOnWriteArrayList;
.registers 2
.prologue
.line 22
iget-object v0, p0, Ldxoptimizer/wb;->e:Ljava/util/concurrent/CopyOnWriteArrayList;
return-object v0
.end method
.method static synthetic b(Ldxoptimizer/wb;Z)Z
.registers 2
.prologue
.line 22
iput-boolean p1, p0, Ldxoptimizer/wb;->f:Z
return p1
.end method
.method private c()V
.registers 5
.prologue
.line 152
iget-object v0, p0, Ldxoptimizer/wb;->b:Landroid/content/Context;
if-nez v0, :cond_5
.line 156
:goto_4
return-void
.line 155
:cond_5
iget-object v0, p0, Ldxoptimizer/wb;->b:Landroid/content/Context;
new-instance v1, Landroid/content/Intent;
iget-object v2, p0, Ldxoptimizer/wb;->b:Landroid/content/Context;
const-class v3, Lcom/dianxinos/dxservice/core/DXCoreService;
invoke-direct {v1, v2, v3}, Landroid/content/Intent;-><init>(Landroid/content/Context;Ljava/lang/Class;)V
iget-object v2, p0, Ldxoptimizer/wb;->h:Landroid/content/ServiceConnection;
const/4 v3, 0x1
invoke-virtual {v0, v1, v2, v3}, Landroid/content/Context;->bindService(Landroid/content/Intent;Landroid/content/ServiceConnection;I)Z
goto :goto_4
.end method
# virtual methods
.method public a()V
.registers 3
.prologue
.line 60
sget-boolean v0, Ldxoptimizer/xa;->c:Z
if-eqz v0, :cond_b
.line 61
const-string v0, "stat.DXServiceInterator"
const-string v1, "Start to bind!"
invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
.line 63
:cond_b
invoke-direct {p0}, Ldxoptimizer/wb;->c()V
.line 64
return-void
.end method
.method public a(I)Z
.registers 4
.prologue
.line 97
iget-boolean v0, p0, Ldxoptimizer/wb;->c:Z
if-nez v0, :cond_11
.line 98
sget-boolean v0, Ldxoptimizer/xa;->c:Z
if-eqz v0, :cond_f
.line 99
const-string v0, "stat.DXServiceInterator"
const-string v1, "Service haven\'t bind.The status change trigger will be ignored!"
invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
.line 101
:cond_f
const/4 v0, 0x1
.line 104
:goto_10
return v0
.line 103
:cond_11
const/4 v0, 0x0
invoke-static {v0, p1}, Landroid/os/Message;->obtain(Landroid/os/Handler;I)Landroid/os/Message;
move-result-object v0
.line 104
invoke-direct {p0, v0}, Ldxoptimizer/wb;->a(Landroid/os/Message;)Z
move-result v0
goto :goto_10
.end method
.method public a(Ldxoptimizer/we;)Z
.registers 6
.prologue
const/4 v0, 0x1
.line 71
iget-boolean v1, p0, Ldxoptimizer/wb;->c:Z
if-nez v1, :cond_31
.line 72
sget-boolean v1, Ldxoptimizer/xa;->c:Z
if-eqz v1, :cond_2b
.line 73
const-string v1, "stat.DXServiceInterator"
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "Service haven\'t bind.The event "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {p1}, Ldxoptimizer/we;->toString()Ljava/lang/String;
move-result-object v3
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
const-string v3, " will send again when service is bound!"
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-static {v1, v2}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
.line 76
:cond_2b
iget-object v1, p0, Ldxoptimizer/wb;->e:Ljava/util/concurrent/CopyOnWriteArrayList;
invoke-virtual {v1, p1}, Ljava/util/concurrent/CopyOnWriteArrayList;->add(Ljava/lang/Object;)Z
.line 81
:goto_30
return v0
.line 79
:cond_31
const/4 v1, 0x0
invoke-static {v1, v0}, Landroid/os/Message;->obtain(Landroid/os/Handler;I)Landroid/os/Message;
move-result-object v0
.line 80
invoke-virtual {p1}, Ldxoptimizer/we;->a()Landroid/os/Bundle;
move-result-object v1
invoke-virtual {v0, v1}, Landroid/os/Message;->setData(Landroid/os/Bundle;)V
.line 81
invoke-direct {p0, v0}, Ldxoptimizer/wb;->a(Landroid/os/Message;)Z
move-result v0
goto :goto_30
.end method
.method public b()Z
.registers 4
.prologue
const/4 v0, 0x1
.line 85
iget-boolean v1, p0, Ldxoptimizer/wb;->c:Z
if-nez v1, :cond_13
.line 86
sget-boolean v1, Ldxoptimizer/xa;->c:Z
if-eqz v1, :cond_10
.line 87
const-string v1, "stat.DXServiceInterator"
const-string v2, "Service haven\'t bind.When is bound,it will send again!"
invoke-static {v1, v2}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
.line 89
:cond_10
iput-boolean v0, p0, Ldxoptimizer/wb;->f:Z
.line 93
:goto_12
return v0
.line 92
:cond_13
const/4 v0, 0x0
const/4 v1, 0x2
invoke-static {v0, v1}, Landroid/os/Message;->obtain(Landroid/os/Handler;I)Landroid/os/Message;
move-result-object v0
.line 93
invoke-direct {p0, v0}, Ldxoptimizer/wb;->a(Landroid/os/Message;)Z
move-result v0
goto :goto_12
.end method