d.smali
.class public Lcom/umeng/commonsdk/stateless/d;
.super Ljava/lang/Object;
.source "UMSLNetWorkSender.java"
# static fields
.field public static final a:I = 0x111
.field private static b:Landroid/content/Context; = null
.field private static c:Landroid/os/HandlerThread; = null
.field private static d:Landroid/os/Handler; = null
.field private static e:Ljava/lang/Object; = null
.field private static final f:I = 0x200
.field private static g:Landroid/content/IntentFilter;
.field private static h:Z
.field private static i:Landroid/content/BroadcastReceiver;
# direct methods
.method static constructor <clinit>()V
.registers 1
.prologue
const/4 v0, 0x0
.line 33
sput-object v0, Lcom/umeng/commonsdk/stateless/d;->c:Landroid/os/HandlerThread;
.line 34
sput-object v0, Lcom/umeng/commonsdk/stateless/d;->d:Landroid/os/Handler;
.line 35
new-instance v0, Ljava/lang/Object;
invoke-direct {v0}, Ljava/lang/Object;-><init>()V
sput-object v0, Lcom/umeng/commonsdk/stateless/d;->e:Ljava/lang/Object;
.line 42
const/4 v0, 0x0
sput-boolean v0, Lcom/umeng/commonsdk/stateless/d;->h:Z
.line 44
new-instance v0, Lcom/umeng/commonsdk/stateless/d$1;
invoke-direct {v0}, Lcom/umeng/commonsdk/stateless/d$1;-><init>()V
sput-object v0, Lcom/umeng/commonsdk/stateless/d;->i:Landroid/content/BroadcastReceiver;
return-void
.end method
.method public constructor <init>(Landroid/content/Context;)V
.registers 7
.prologue
.line 76
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 77
sget-object v1, Lcom/umeng/commonsdk/stateless/d;->e:Ljava/lang/Object;
monitor-enter v1
.line 79
if-eqz p1, :cond_78
.line 80
:try_start_8
invoke-virtual {p1}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object v0
sput-object v0, Lcom/umeng/commonsdk/stateless/d;->b:Landroid/content/Context;
.line 81
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->b:Landroid/content/Context;
if-eqz v0, :cond_78
.line 82
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->c:Landroid/os/HandlerThread;
if-nez v0, :cond_78
.line 83
new-instance v0, Landroid/os/HandlerThread;
const-string v2, "SL-NetWorkSender"
invoke-direct {v0, v2}, Landroid/os/HandlerThread;-><init>(Ljava/lang/String;)V
sput-object v0, Lcom/umeng/commonsdk/stateless/d;->c:Landroid/os/HandlerThread;
.line 84
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->c:Landroid/os/HandlerThread;
invoke-virtual {v0}, Landroid/os/HandlerThread;->start()V
.line 86
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->d:Landroid/os/Handler;
if-nez v0, :cond_35
.line 87
new-instance v0, Lcom/umeng/commonsdk/stateless/d$2;
sget-object v2, Lcom/umeng/commonsdk/stateless/d;->c:Landroid/os/HandlerThread;
invoke-virtual {v2}, Landroid/os/HandlerThread;->getLooper()Landroid/os/Looper;
move-result-object v2
invoke-direct {v0, p0, v2}, Lcom/umeng/commonsdk/stateless/d$2;-><init>(Lcom/umeng/commonsdk/stateless/d;Landroid/os/Looper;)V
sput-object v0, Lcom/umeng/commonsdk/stateless/d;->d:Landroid/os/Handler;
.line 107
:cond_35
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->b:Landroid/content/Context;
const-string v2, "android.permission.ACCESS_NETWORK_STATE"
invoke-static {v0, v2}, Lcom/umeng/commonsdk/statistics/common/DeviceConfig;->checkPermission(Landroid/content/Context;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_78
.line 109
const-string v0, "walle"
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
const-string v4, "[stateless] begin register receiver"
aput-object v4, v2, v3
invoke-static {v0, v2}, Lcom/umeng/commonsdk/statistics/common/ULog;->i(Ljava/lang/String;[Ljava/lang/Object;)V
.line 110
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->g:Landroid/content/IntentFilter;
if-nez v0, :cond_78
.line 111
new-instance v0, Landroid/content/IntentFilter;
invoke-direct {v0}, Landroid/content/IntentFilter;-><init>()V
sput-object v0, Lcom/umeng/commonsdk/stateless/d;->g:Landroid/content/IntentFilter;
.line 112
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->g:Landroid/content/IntentFilter;
const-string v2, "android.net.conn.CONNECTIVITY_CHANGE"
invoke-virtual {v0, v2}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
.line 113
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->i:Landroid/content/BroadcastReceiver;
if-eqz v0, :cond_78
.line 114
const-string v0, "walle"
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
const-string v4, "[stateless] register receiver ok"
aput-object v4, v2, v3
invoke-static {v0, v2}, Lcom/umeng/commonsdk/statistics/common/ULog;->i(Ljava/lang/String;[Ljava/lang/Object;)V
.line 115
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->b:Landroid/content/Context;
sget-object v2, Lcom/umeng/commonsdk/stateless/d;->i:Landroid/content/BroadcastReceiver;
sget-object v3, Lcom/umeng/commonsdk/stateless/d;->g:Landroid/content/IntentFilter;
invoke-virtual {v0, v2, v3}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
:try_end_78
.catch Ljava/lang/Throwable; {:try_start_8 .. :try_end_78} :catch_7a
.catchall {:try_start_8 .. :try_end_78} :catchall_7f
.line 127
:cond_78
:goto_78
:try_start_78
monitor-exit v1
.line 129
return-void
.line 124
:catch_7a
move-exception v0
.line 125
invoke-static {p1, v0}, Lcom/umeng/commonsdk/internal/crash/UMCrashManager;->reportCrash(Landroid/content/Context;Ljava/lang/Throwable;)V
goto :goto_78
.line 127
:catchall_7f
move-exception v0
monitor-exit v1
:try_end_81
.catchall {:try_start_78 .. :try_end_81} :catchall_7f
throw v0
.end method
.method static synthetic a(Landroid/content/Context;)Landroid/content/Context;
.registers 1
.prologue
.line 29
sput-object p0, Lcom/umeng/commonsdk/stateless/d;->b:Landroid/content/Context;
return-object p0
.end method
.method public static a()V
.registers 1
.prologue
.line 227
const/16 v0, 0x200
invoke-static {v0}, Lcom/umeng/commonsdk/stateless/d;->b(I)V
.line 228
return-void
.end method
.method public static a(I)V
.registers 3
.prologue
.line 136
sget-boolean v0, Lcom/umeng/commonsdk/stateless/d;->h:Z
if-eqz v0, :cond_15
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->d:Landroid/os/Handler;
if-eqz v0, :cond_15
.line 137
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->d:Landroid/os/Handler;
invoke-virtual {v0}, Landroid/os/Handler;->obtainMessage()Landroid/os/Message;
move-result-object v0
.line 138
iput p0, v0, Landroid/os/Message;->what:I
.line 139
sget-object v1, Lcom/umeng/commonsdk/stateless/d;->d:Landroid/os/Handler;
invoke-virtual {v1, v0}, Landroid/os/Handler;->sendMessage(Landroid/os/Message;)Z
.line 141
:cond_15
return-void
.end method
.method static synthetic a(Z)Z
.registers 1
.prologue
.line 29
sput-boolean p0, Lcom/umeng/commonsdk/stateless/d;->h:Z
return p0
.end method
.method static synthetic b()Landroid/content/Context;
.registers 1
.prologue
.line 29
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->b:Landroid/content/Context;
return-object v0
.end method
.method public static b(I)V
.registers 5
.prologue
.line 149
:try_start_0
sget-boolean v0, Lcom/umeng/commonsdk/stateless/d;->h:Z
if-eqz v0, :cond_2a
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->d:Landroid/os/Handler;
if-eqz v0, :cond_2a
.line 150
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->d:Landroid/os/Handler;
invoke-virtual {v0, p0}, Landroid/os/Handler;->hasMessages(I)Z
move-result v0
if-nez v0, :cond_2a
.line 151
const-string v0, "walle"
const/4 v1, 0x1
new-array v1, v1, [Ljava/lang/Object;
const/4 v2, 0x0
const-string v3, "[stateless] sendMsgOnce !!!!"
aput-object v3, v1, v2
invoke-static {v0, v1}, Lcom/umeng/commonsdk/statistics/common/ULog;->i(Ljava/lang/String;[Ljava/lang/Object;)V
.line 152
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->d:Landroid/os/Handler;
invoke-virtual {v0}, Landroid/os/Handler;->obtainMessage()Landroid/os/Message;
move-result-object v0
.line 153
iput p0, v0, Landroid/os/Message;->what:I
.line 154
sget-object v1, Lcom/umeng/commonsdk/stateless/d;->d:Landroid/os/Handler;
invoke-virtual {v1, v0}, Landroid/os/Handler;->sendMessage(Landroid/os/Message;)Z
:try_end_2a
.catch Ljava/lang/Throwable; {:try_start_0 .. :try_end_2a} :catch_2b
.line 160
:cond_2a
:goto_2a
return-void
.line 157
:catch_2b
move-exception v0
.line 158
sget-object v1, Lcom/umeng/commonsdk/stateless/d;->b:Landroid/content/Context;
invoke-static {v1, v0}, Lcom/umeng/commonsdk/internal/crash/UMCrashManager;->reportCrash(Landroid/content/Context;Ljava/lang/Throwable;)V
goto :goto_2a
.end method
.method static synthetic c()V
.registers 0
.prologue
.line 29
invoke-static {}, Lcom/umeng/commonsdk/stateless/d;->e()V
return-void
.end method
.method static synthetic d()V
.registers 0
.prologue
.line 29
invoke-static {}, Lcom/umeng/commonsdk/stateless/d;->f()V
return-void
.end method
.method private static e()V
.registers 8
.prologue
.line 178
sget-boolean v0, Lcom/umeng/commonsdk/stateless/d;->h:Z
if-eqz v0, :cond_8
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->b:Landroid/content/Context;
if-nez v0, :cond_9
.line 219
:cond_8
:goto_8
return-void
.line 183
:cond_9
:try_start_9
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->b:Landroid/content/Context;
invoke-static {v0}, Lcom/umeng/commonsdk/stateless/f;->a(Landroid/content/Context;)Ljava/io/File;
move-result-object v2
.line 184
if-eqz v2, :cond_8
invoke-virtual {v2}, Ljava/io/File;->getParentFile()Ljava/io/File;
move-result-object v0
if-eqz v0, :cond_8
invoke-virtual {v2}, Ljava/io/File;->getParentFile()Ljava/io/File;
move-result-object v0
invoke-virtual {v0}, Ljava/io/File;->getName()Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-nez v0, :cond_8
.line 185
new-instance v3, Lcom/umeng/commonsdk/stateless/e;
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->b:Landroid/content/Context;
invoke-direct {v3, v0}, Lcom/umeng/commonsdk/stateless/e;-><init>(Landroid/content/Context;)V
.line 186
if-eqz v3, :cond_a6
.line 187
new-instance v4, Ljava/lang/String;
invoke-virtual {v2}, Ljava/io/File;->getParentFile()Ljava/io/File;
move-result-object v0
invoke-virtual {v0}, Ljava/io/File;->getName()Ljava/lang/String;
move-result-object v0
const/4 v1, 0x0
invoke-static {v0, v1}, Landroid/util/Base64;->decode(Ljava/lang/String;I)[B
move-result-object v0
invoke-direct {v4, v0}, Ljava/lang/String;-><init>([B)V
.line 188
const-string v0, "walle"
const/4 v1, 0x1
new-array v1, v1, [Ljava/lang/Object;
const/4 v5, 0x0
new-instance v6, Ljava/lang/StringBuilder;
invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
const-string v7, "[stateless] handleProcessNext, pathUrl is "
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
invoke-virtual {v6, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v6
aput-object v6, v1, v5
invoke-static {v0, v1}, Lcom/umeng/commonsdk/statistics/common/ULog;->i(Ljava/lang/String;[Ljava/lang/Object;)V
:try_end_5e
.catch Ljava/lang/Throwable; {:try_start_9 .. :try_end_5e} :catch_ad
.line 189
const/4 v0, 0x0
.line 191
:try_start_5f
invoke-virtual {v2}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;
move-result-object v1
invoke-static {v1}, Lcom/umeng/commonsdk/stateless/f;->a(Ljava/lang/String;)[B
:try_end_66
.catch Ljava/lang/Exception; {:try_start_5f .. :try_end_66} :catch_b5
.catch Ljava/lang/Throwable; {:try_start_5f .. :try_end_66} :catch_ad
move-result-object v0
move-object v1, v0
.line 193
:goto_68
:try_start_68
const-string v0, ""
.line 194
sget-object v5, Lcom/umeng/commonsdk/vchannel/a;->c:Ljava/lang/String;
invoke-virtual {v5, v4}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v5
if-eqz v5, :cond_74
.line 195
sget-object v0, Lcom/umeng/commonsdk/vchannel/a;->a:Ljava/lang/String;
.line 197
:cond_74
invoke-virtual {v3, v1, v4, v0}, Lcom/umeng/commonsdk/stateless/e;->a([BLjava/lang/String;Ljava/lang/String;)Z
move-result v0
.line 198
if-eqz v0, :cond_b8
.line 199
const-string v0, "walle"
const/4 v1, 0x1
new-array v1, v1, [Ljava/lang/Object;
const/4 v3, 0x0
const-string v4, "[stateless] Send envelope file success, delete it."
aput-object v4, v1, v3
invoke-static {v0, v1}, Lcom/umeng/commonsdk/statistics/common/ULog;->i(Ljava/lang/String;[Ljava/lang/Object;)V
.line 200
new-instance v0, Ljava/io/File;
invoke-virtual {v2}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
.line 201
invoke-virtual {v0}, Ljava/io/File;->delete()Z
move-result v1
if-nez v1, :cond_a6
.line 202
const-string v1, "walle"
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
const-string v4, "[stateless] Failed to delete already processed file. We try again after delete failed."
aput-object v4, v2, v3
invoke-static {v1, v2}, Lcom/umeng/commonsdk/statistics/common/ULog;->i(Ljava/lang/String;[Ljava/lang/Object;)V
.line 203
invoke-virtual {v0}, Ljava/io/File;->delete()Z
.line 213
:cond_a6
const/16 v0, 0x111
invoke-static {v0}, Lcom/umeng/commonsdk/stateless/d;->b(I)V
:try_end_ab
.catch Ljava/lang/Throwable; {:try_start_68 .. :try_end_ab} :catch_ad
goto/16 :goto_8
.line 215
:catch_ad
move-exception v0
.line 216
sget-object v1, Lcom/umeng/commonsdk/stateless/d;->b:Landroid/content/Context;
invoke-static {v1, v0}, Lcom/umeng/commonsdk/internal/crash/UMCrashManager;->reportCrash(Landroid/content/Context;Ljava/lang/Throwable;)V
goto/16 :goto_8
.line 192
:catch_b5
move-exception v1
move-object v1, v0
goto :goto_68
.line 206
:cond_b8
:try_start_b8
const-string v0, "walle"
const/4 v1, 0x1
new-array v1, v1, [Ljava/lang/Object;
const/4 v2, 0x0
const-string v3, "[stateless] Send envelope file failed, abandon and wait next trigger!"
aput-object v3, v1, v2
invoke-static {v0, v1}, Lcom/umeng/commonsdk/statistics/common/ULog;->i(Ljava/lang/String;[Ljava/lang/Object;)V
:try_end_c5
.catch Ljava/lang/Throwable; {:try_start_b8 .. :try_end_c5} :catch_ad
goto/16 :goto_8
.end method
.method private static f()V
.registers 3
.prologue
const/4 v2, 0x0
.line 234
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->g:Landroid/content/IntentFilter;
if-eqz v0, :cond_18
.line 235
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->i:Landroid/content/BroadcastReceiver;
if-eqz v0, :cond_16
.line 236
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->b:Landroid/content/Context;
if-eqz v0, :cond_14
.line 237
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->b:Landroid/content/Context;
sget-object v1, Lcom/umeng/commonsdk/stateless/d;->i:Landroid/content/BroadcastReceiver;
invoke-virtual {v0, v1}, Landroid/content/Context;->unregisterReceiver(Landroid/content/BroadcastReceiver;)V
.line 239
:cond_14
sput-object v2, Lcom/umeng/commonsdk/stateless/d;->i:Landroid/content/BroadcastReceiver;
.line 241
:cond_16
sput-object v2, Lcom/umeng/commonsdk/stateless/d;->g:Landroid/content/IntentFilter;
.line 243
:cond_18
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->c:Landroid/os/HandlerThread;
if-eqz v0, :cond_2d
.line 244
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->c:Landroid/os/HandlerThread;
invoke-virtual {v0}, Landroid/os/HandlerThread;->quit()Z
.line 245
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->c:Landroid/os/HandlerThread;
if-eqz v0, :cond_27
.line 246
sput-object v2, Lcom/umeng/commonsdk/stateless/d;->c:Landroid/os/HandlerThread;
.line 248
:cond_27
sget-object v0, Lcom/umeng/commonsdk/stateless/d;->d:Landroid/os/Handler;
if-eqz v0, :cond_2d
.line 249
sput-object v2, Lcom/umeng/commonsdk/stateless/d;->d:Landroid/os/Handler;
.line 252
:cond_2d
return-void
.end method