t.smali
.class public Lcom/amap/api/services/a/t;
.super Lcom/amap/api/services/a/q;
# interfaces
.implements Ljava/lang/Thread$UncaughtExceptionHandler;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/amap/api/services/a/t$a;
}
.end annotation
# static fields
.field private static e:Ljava/util/concurrent/ExecutorService;
# instance fields
.field private d:Landroid/content/Context;
# direct methods
.method private constructor <init>(Landroid/content/Context;Lcom/amap/api/services/a/n;)V
.registers 4
invoke-direct {p0}, Lcom/amap/api/services/a/q;-><init>()V
iput-object p1, p0, Lcom/amap/api/services/a/t;->d:Landroid/content/Context;
new-instance v0, Lcom/amap/api/services/a/t$a;
invoke-direct {v0, p1}, Lcom/amap/api/services/a/t$a;-><init>(Landroid/content/Context;)V
invoke-static {v0}, Lcom/amap/api/services/a/be;->a(Lcom/amap/api/services/a/bf;)V
invoke-direct {p0}, Lcom/amap/api/services/a/t;->c()V
return-void
.end method
.method static synthetic a(Lcom/amap/api/services/a/t;)Landroid/content/Context;
.registers 2
iget-object v0, p0, Lcom/amap/api/services/a/t;->d:Landroid/content/Context;
return-object v0
.end method
.method public static declared-synchronized a()Lcom/amap/api/services/a/t;
.registers 2
const-class v1, Lcom/amap/api/services/a/t;
monitor-enter v1
:try_start_3
sget-object v0, Lcom/amap/api/services/a/q;->a:Lcom/amap/api/services/a/q;
check-cast v0, Lcom/amap/api/services/a/t;
:try_end_7
.catchall {:try_start_3 .. :try_end_7} :catchall_9
monitor-exit v1
return-object v0
:catchall_9
move-exception v0
monitor-exit v1
throw v0
.end method
.method public static declared-synchronized a(Landroid/content/Context;Lcom/amap/api/services/a/n;)Lcom/amap/api/services/a/t;
.registers 5
const-class v1, Lcom/amap/api/services/a/t;
monitor-enter v1
if-nez p1, :cond_11
:try_start_5
new-instance v0, Lcom/amap/api/services/a/ax;
const-string/jumbo v2, "sdk info is null"
invoke-direct {v0, v2}, Lcom/amap/api/services/a/ax;-><init>(Ljava/lang/String;)V
throw v0
:try_end_e
.catchall {:try_start_5 .. :try_end_e} :catchall_e
:catchall_e
move-exception v0
monitor-exit v1
throw v0
:cond_11
:try_start_11
invoke-virtual {p1}, Lcom/amap/api/services/a/n;->a()Ljava/lang/String;
move-result-object v0
if-eqz v0, :cond_24
const-string/jumbo v0, ""
invoke-virtual {p1}, Lcom/amap/api/services/a/n;->a()Ljava/lang/String;
move-result-object v2
invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_2d
:cond_24
new-instance v0, Lcom/amap/api/services/a/ax;
const-string/jumbo v2, "sdk name is invalid"
invoke-direct {v0, v2}, Lcom/amap/api/services/a/ax;-><init>(Ljava/lang/String;)V
throw v0
:try_end_2d
.catchall {:try_start_11 .. :try_end_2d} :catchall_e
:cond_2d
:try_start_2d
sget-object v0, Lcom/amap/api/services/a/q;->a:Lcom/amap/api/services/a/q;
if-nez v0, :cond_47
new-instance v0, Lcom/amap/api/services/a/t;
invoke-direct {v0, p0, p1}, Lcom/amap/api/services/a/t;-><init>(Landroid/content/Context;Lcom/amap/api/services/a/n;)V
sput-object v0, Lcom/amap/api/services/a/q;->a:Lcom/amap/api/services/a/q;
:goto_38
sget-object v0, Lcom/amap/api/services/a/q;->a:Lcom/amap/api/services/a/q;
sget-object v2, Lcom/amap/api/services/a/q;->a:Lcom/amap/api/services/a/q;
iget-boolean v2, v2, Lcom/amap/api/services/a/q;->c:Z
invoke-virtual {v0, p0, p1, v2}, Lcom/amap/api/services/a/q;->a(Landroid/content/Context;Lcom/amap/api/services/a/n;Z)V
:try_end_41
.catch Ljava/lang/Throwable; {:try_start_2d .. :try_end_41} :catch_4d
.catchall {:try_start_2d .. :try_end_41} :catchall_e
:goto_41
:try_start_41
sget-object v0, Lcom/amap/api/services/a/q;->a:Lcom/amap/api/services/a/q;
check-cast v0, Lcom/amap/api/services/a/t;
:try_end_45
.catchall {:try_start_41 .. :try_end_45} :catchall_e
monitor-exit v1
return-object v0
:cond_47
:try_start_47
sget-object v0, Lcom/amap/api/services/a/q;->a:Lcom/amap/api/services/a/q;
const/4 v2, 0x0
iput-boolean v2, v0, Lcom/amap/api/services/a/q;->c:Z
:try_end_4c
.catch Ljava/lang/Throwable; {:try_start_47 .. :try_end_4c} :catch_4d
.catchall {:try_start_47 .. :try_end_4c} :catchall_e
goto :goto_38
:catch_4d
move-exception v0
:try_start_4e
invoke-virtual {v0}, Ljava/lang/Throwable;->printStackTrace()V
:try_end_51
.catchall {:try_start_4e .. :try_end_51} :catchall_e
goto :goto_41
.end method
.method public static declared-synchronized b()Ljava/util/concurrent/ExecutorService;
.registers 2
const-class v1, Lcom/amap/api/services/a/t;
monitor-enter v1
:try_start_3
sget-object v0, Lcom/amap/api/services/a/t;->e:Ljava/util/concurrent/ExecutorService;
if-eqz v0, :cond_f
sget-object v0, Lcom/amap/api/services/a/t;->e:Ljava/util/concurrent/ExecutorService;
invoke-interface {v0}, Ljava/util/concurrent/ExecutorService;->isShutdown()Z
move-result v0
if-eqz v0, :cond_15
:cond_f
invoke-static {}, Ljava/util/concurrent/Executors;->newSingleThreadExecutor()Ljava/util/concurrent/ExecutorService;
move-result-object v0
sput-object v0, Lcom/amap/api/services/a/t;->e:Ljava/util/concurrent/ExecutorService;
:try_end_15
.catch Ljava/lang/Throwable; {:try_start_3 .. :try_end_15} :catch_19
.catchall {:try_start_3 .. :try_end_15} :catchall_1e
:cond_15
:goto_15
:try_start_15
sget-object v0, Lcom/amap/api/services/a/t;->e:Ljava/util/concurrent/ExecutorService;
:try_end_17
.catchall {:try_start_15 .. :try_end_17} :catchall_1e
monitor-exit v1
return-object v0
:catch_19
move-exception v0
:try_start_1a
invoke-virtual {v0}, Ljava/lang/Throwable;->printStackTrace()V
:try_end_1d
.catchall {:try_start_1a .. :try_end_1d} :catchall_1e
goto :goto_15
:catchall_1e
move-exception v0
monitor-exit v1
throw v0
.end method
.method public static b(Ljava/lang/Throwable;Ljava/lang/String;Ljava/lang/String;)V
.registers 5
sget-object v0, Lcom/amap/api/services/a/q;->a:Lcom/amap/api/services/a/q;
if-eqz v0, :cond_a
sget-object v0, Lcom/amap/api/services/a/q;->a:Lcom/amap/api/services/a/q;
const/4 v1, 0x1
invoke-virtual {v0, p0, v1, p1, p2}, Lcom/amap/api/services/a/q;->a(Ljava/lang/Throwable;ILjava/lang/String;Ljava/lang/String;)V
:cond_a
return-void
.end method
.method private c()V
.registers 4
const/4 v2, -0x1
:try_start_1
invoke-static {}, Ljava/lang/Thread;->getDefaultUncaughtExceptionHandler()Ljava/lang/Thread$UncaughtExceptionHandler;
move-result-object v0
iput-object v0, p0, Lcom/amap/api/services/a/t;->b:Ljava/lang/Thread$UncaughtExceptionHandler;
iget-object v0, p0, Lcom/amap/api/services/a/t;->b:Ljava/lang/Thread$UncaughtExceptionHandler;
if-nez v0, :cond_12
invoke-static {p0}, Ljava/lang/Thread;->setDefaultUncaughtExceptionHandler(Ljava/lang/Thread$UncaughtExceptionHandler;)V
const/4 v0, 0x1
iput-boolean v0, p0, Lcom/amap/api/services/a/t;->c:Z
:goto_11
return-void
:cond_12
iget-object v0, p0, Lcom/amap/api/services/a/t;->b:Ljava/lang/Thread$UncaughtExceptionHandler;
invoke-virtual {v0}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v0
const-string/jumbo v1, "com.amap.api"
invoke-virtual {v0, v1}, Ljava/lang/String;->indexOf(Ljava/lang/String;)I
move-result v1
if-ne v1, v2, :cond_2a
const-string/jumbo v1, "com.amap.loc"
invoke-virtual {v0, v1}, Ljava/lang/String;->indexOf(Ljava/lang/String;)I
move-result v0
if-eq v0, v2, :cond_33
:cond_2a
const/4 v0, 0x0
iput-boolean v0, p0, Lcom/amap/api/services/a/t;->c:Z
:try_end_2d
.catch Ljava/lang/Throwable; {:try_start_1 .. :try_end_2d} :catch_2e
goto :goto_11
:catch_2e
move-exception v0
invoke-virtual {v0}, Ljava/lang/Throwable;->printStackTrace()V
goto :goto_11
:cond_33
:try_start_33
invoke-static {p0}, Ljava/lang/Thread;->setDefaultUncaughtExceptionHandler(Ljava/lang/Thread$UncaughtExceptionHandler;)V
const/4 v0, 0x1
iput-boolean v0, p0, Lcom/amap/api/services/a/t;->c:Z
:try_end_39
.catch Ljava/lang/Throwable; {:try_start_33 .. :try_end_39} :catch_2e
goto :goto_11
.end method
# virtual methods
.method protected a(Landroid/content/Context;Lcom/amap/api/services/a/n;Z)V
.registers 6
:try_start_0
invoke-static {}, Lcom/amap/api/services/a/t;->b()Ljava/util/concurrent/ExecutorService;
move-result-object v0
if-eqz v0, :cond_c
invoke-interface {v0}, Ljava/util/concurrent/ExecutorService;->isShutdown()Z
move-result v1
if-eqz v1, :cond_d
:cond_c
:goto_c
return-void
:cond_d
new-instance v1, Lcom/amap/api/services/a/t$1;
invoke-direct {v1, p0, p1, p2, p3}, Lcom/amap/api/services/a/t$1;-><init>(Lcom/amap/api/services/a/t;Landroid/content/Context;Lcom/amap/api/services/a/n;Z)V
invoke-interface {v0, v1}, Ljava/util/concurrent/ExecutorService;->submit(Ljava/lang/Runnable;)Ljava/util/concurrent/Future;
:try_end_15
.catch Ljava/util/concurrent/RejectedExecutionException; {:try_start_0 .. :try_end_15} :catch_16
.catch Ljava/lang/Throwable; {:try_start_0 .. :try_end_15} :catch_18
goto :goto_c
:catch_16
move-exception v0
goto :goto_c
:catch_18
move-exception v0
invoke-virtual {v0}, Ljava/lang/Throwable;->printStackTrace()V
goto :goto_c
.end method
.method protected a(Ljava/lang/Throwable;ILjava/lang/String;Ljava/lang/String;)V
.registers 6
iget-object v0, p0, Lcom/amap/api/services/a/t;->d:Landroid/content/Context;
invoke-static {v0, p1, p2, p3, p4}, Lcom/amap/api/services/a/r;->a(Landroid/content/Context;Ljava/lang/Throwable;ILjava/lang/String;Ljava/lang/String;)V
return-void
.end method
.method public c(Ljava/lang/Throwable;Ljava/lang/String;Ljava/lang/String;)V
.registers 5
if-nez p1, :cond_3
:goto_2
return-void
:cond_3
const/4 v0, 0x1
:try_start_4
invoke-virtual {p0, p1, v0, p2, p3}, Lcom/amap/api/services/a/t;->a(Ljava/lang/Throwable;ILjava/lang/String;Ljava/lang/String;)V
:try_end_7
.catch Ljava/lang/Throwable; {:try_start_4 .. :try_end_7} :catch_8
goto :goto_2
:catch_8
move-exception v0
invoke-virtual {v0}, Ljava/lang/Throwable;->printStackTrace()V
goto :goto_2
.end method
.method public uncaughtException(Ljava/lang/Thread;Ljava/lang/Throwable;)V
.registers 5
const/4 v1, 0x0
if-nez p2, :cond_4
:cond_3
:goto_3
return-void
:cond_4
const/4 v0, 0x0
invoke-virtual {p0, p2, v0, v1, v1}, Lcom/amap/api/services/a/t;->a(Ljava/lang/Throwable;ILjava/lang/String;Ljava/lang/String;)V
iget-object v0, p0, Lcom/amap/api/services/a/t;->b:Ljava/lang/Thread$UncaughtExceptionHandler;
if-eqz v0, :cond_3
:try_start_c
iget-object v0, p0, Lcom/amap/api/services/a/t;->b:Ljava/lang/Thread$UncaughtExceptionHandler;
invoke-static {v0}, Ljava/lang/Thread;->setDefaultUncaughtExceptionHandler(Ljava/lang/Thread$UncaughtExceptionHandler;)V
:try_end_11
.catch Ljava/lang/Throwable; {:try_start_c .. :try_end_11} :catch_17
:goto_11
iget-object v0, p0, Lcom/amap/api/services/a/t;->b:Ljava/lang/Thread$UncaughtExceptionHandler;
invoke-interface {v0, p1, p2}, Ljava/lang/Thread$UncaughtExceptionHandler;->uncaughtException(Ljava/lang/Thread;Ljava/lang/Throwable;)V
goto :goto_3
:catch_17
move-exception v0
goto :goto_11
.end method