as.smali
.class public Lcom/amap/api/services/a/as;
.super Ljava/lang/Object;
# interfaces
.implements Ljava/lang/Thread$UncaughtExceptionHandler;
# static fields
.field private static a:Lcom/amap/api/services/a/as;
# instance fields
.field private b:Ljava/lang/Thread$UncaughtExceptionHandler;
.field private c:Landroid/content/Context;
.field private d:Lcom/amap/api/services/a/n;
# direct methods
.method private constructor <init>(Landroid/content/Context;Lcom/amap/api/services/a/n;)V
.registers 4
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
invoke-virtual {p1}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object v0
iput-object v0, p0, Lcom/amap/api/services/a/as;->c:Landroid/content/Context;
iput-object p2, p0, Lcom/amap/api/services/a/as;->d:Lcom/amap/api/services/a/n;
invoke-static {}, Ljava/lang/Thread;->getDefaultUncaughtExceptionHandler()Ljava/lang/Thread$UncaughtExceptionHandler;
move-result-object v0
iput-object v0, p0, Lcom/amap/api/services/a/as;->b:Ljava/lang/Thread$UncaughtExceptionHandler;
invoke-static {p0}, Ljava/lang/Thread;->setDefaultUncaughtExceptionHandler(Ljava/lang/Thread$UncaughtExceptionHandler;)V
return-void
.end method
.method static declared-synchronized a(Landroid/content/Context;Lcom/amap/api/services/a/n;)Lcom/amap/api/services/a/as;
.registers 4
const-class v1, Lcom/amap/api/services/a/as;
monitor-enter v1
:try_start_3
sget-object v0, Lcom/amap/api/services/a/as;->a:Lcom/amap/api/services/a/as;
if-nez v0, :cond_e
new-instance v0, Lcom/amap/api/services/a/as;
invoke-direct {v0, p0, p1}, Lcom/amap/api/services/a/as;-><init>(Landroid/content/Context;Lcom/amap/api/services/a/n;)V
sput-object v0, Lcom/amap/api/services/a/as;->a:Lcom/amap/api/services/a/as;
:cond_e
sget-object v0, Lcom/amap/api/services/a/as;->a:Lcom/amap/api/services/a/as;
:try_end_10
.catchall {:try_start_3 .. :try_end_10} :catchall_12
monitor-exit v1
return-object v0
:catchall_12
move-exception v0
monitor-exit v1
throw v0
.end method
# virtual methods
.method a(Ljava/lang/Throwable;)V
.registers 6
invoke-static {p1}, Lcom/amap/api/services/a/o;->a(Ljava/lang/Throwable;)Ljava/lang/String;
move-result-object v0
:try_start_4
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-nez v1, :cond_85
const-string/jumbo v1, "amapdynamic"
invoke-virtual {v0, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v1
if-nez v1, :cond_1c
const-string/jumbo v1, "admic"
invoke-virtual {v0, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_86
:cond_1c
const-string/jumbo v1, "com.amap.api"
invoke-virtual {v0, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_86
new-instance v1, Lcom/amap/api/services/a/z;
iget-object v2, p0, Lcom/amap/api/services/a/as;->c:Landroid/content/Context;
invoke-static {}, Lcom/amap/api/services/a/at;->c()Lcom/amap/api/services/a/at;
move-result-object v3
invoke-direct {v1, v2, v3}, Lcom/amap/api/services/a/z;-><init>(Landroid/content/Context;Lcom/amap/api/services/a/y;)V
const-string/jumbo v2, "loc"
invoke-virtual {v0, v2}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v2
if-eqz v2, :cond_41
iget-object v2, p0, Lcom/amap/api/services/a/as;->c:Landroid/content/Context;
const-string/jumbo v3, "loc"
invoke-static {v1, v2, v3}, Lcom/amap/api/services/a/aq;->a(Lcom/amap/api/services/a/z;Landroid/content/Context;Ljava/lang/String;)V
:cond_41
const-string/jumbo v2, "navi"
invoke-virtual {v0, v2}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v2
if-eqz v2, :cond_52
iget-object v2, p0, Lcom/amap/api/services/a/as;->c:Landroid/content/Context;
const-string/jumbo v3, "navi"
invoke-static {v1, v2, v3}, Lcom/amap/api/services/a/aq;->a(Lcom/amap/api/services/a/z;Landroid/content/Context;Ljava/lang/String;)V
:cond_52
const-string/jumbo v2, "sea"
invoke-virtual {v0, v2}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v2
if-eqz v2, :cond_63
iget-object v2, p0, Lcom/amap/api/services/a/as;->c:Landroid/content/Context;
const-string/jumbo v3, "sea"
invoke-static {v1, v2, v3}, Lcom/amap/api/services/a/aq;->a(Lcom/amap/api/services/a/z;Landroid/content/Context;Ljava/lang/String;)V
:cond_63
const-string/jumbo v2, "2dmap"
invoke-virtual {v0, v2}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v2
if-eqz v2, :cond_74
iget-object v2, p0, Lcom/amap/api/services/a/as;->c:Landroid/content/Context;
const-string/jumbo v3, "2dmap"
invoke-static {v1, v2, v3}, Lcom/amap/api/services/a/aq;->a(Lcom/amap/api/services/a/z;Landroid/content/Context;Ljava/lang/String;)V
:cond_74
const-string/jumbo v2, "3dmap"
invoke-virtual {v0, v2}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_85
iget-object v0, p0, Lcom/amap/api/services/a/as;->c:Landroid/content/Context;
const-string/jumbo v2, "3dmap"
invoke-static {v1, v0, v2}, Lcom/amap/api/services/a/aq;->a(Lcom/amap/api/services/a/z;Landroid/content/Context;Ljava/lang/String;)V
:cond_85
:goto_85
return-void
:cond_86
const-string/jumbo v1, "com.autonavi.aps.amapapi.offline"
invoke-virtual {v0, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_ae
new-instance v0, Lcom/amap/api/services/a/z;
iget-object v1, p0, Lcom/amap/api/services/a/as;->c:Landroid/content/Context;
invoke-static {}, Lcom/amap/api/services/a/at;->c()Lcom/amap/api/services/a/at;
move-result-object v2
invoke-direct {v0, v1, v2}, Lcom/amap/api/services/a/z;-><init>(Landroid/content/Context;Lcom/amap/api/services/a/y;)V
iget-object v1, p0, Lcom/amap/api/services/a/as;->c:Landroid/content/Context;
const-string/jumbo v2, "OfflineLocation"
invoke-static {v0, v1, v2}, Lcom/amap/api/services/a/aq;->a(Lcom/amap/api/services/a/z;Landroid/content/Context;Ljava/lang/String;)V
:try_end_a2
.catch Ljava/lang/Throwable; {:try_start_4 .. :try_end_a2} :catch_a3
goto :goto_85
:catch_a3
move-exception v0
const-string/jumbo v1, "DynamicExceptionHandler"
const-string/jumbo v2, "uncaughtException"
invoke-static {v0, v1, v2}, Lcom/amap/api/services/a/q;->a(Ljava/lang/Throwable;Ljava/lang/String;Ljava/lang/String;)V
goto :goto_85
:cond_ae
:try_start_ae
const-string/jumbo v1, "com.data.carrier_v4"
invoke-virtual {v0, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_cb
new-instance v0, Lcom/amap/api/services/a/z;
iget-object v1, p0, Lcom/amap/api/services/a/as;->c:Landroid/content/Context;
invoke-static {}, Lcom/amap/api/services/a/at;->c()Lcom/amap/api/services/a/at;
move-result-object v2
invoke-direct {v0, v1, v2}, Lcom/amap/api/services/a/z;-><init>(Landroid/content/Context;Lcom/amap/api/services/a/y;)V
iget-object v1, p0, Lcom/amap/api/services/a/as;->c:Landroid/content/Context;
const-string/jumbo v2, "Collection"
invoke-static {v0, v1, v2}, Lcom/amap/api/services/a/aq;->a(Lcom/amap/api/services/a/z;Landroid/content/Context;Ljava/lang/String;)V
goto :goto_85
:cond_cb
const-string/jumbo v1, "com.autonavi.aps.amapapi.httpdns"
invoke-virtual {v0, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v1
if-nez v1, :cond_dd
const-string/jumbo v1, "com.autonavi.httpdns"
invoke-virtual {v0, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_85
:cond_dd
new-instance v0, Lcom/amap/api/services/a/z;
iget-object v1, p0, Lcom/amap/api/services/a/as;->c:Landroid/content/Context;
invoke-static {}, Lcom/amap/api/services/a/at;->c()Lcom/amap/api/services/a/at;
move-result-object v2
invoke-direct {v0, v1, v2}, Lcom/amap/api/services/a/z;-><init>(Landroid/content/Context;Lcom/amap/api/services/a/y;)V
iget-object v1, p0, Lcom/amap/api/services/a/as;->c:Landroid/content/Context;
const-string/jumbo v2, "HttpDNS"
invoke-static {v0, v1, v2}, Lcom/amap/api/services/a/aq;->a(Lcom/amap/api/services/a/z;Landroid/content/Context;Ljava/lang/String;)V
:try_end_f0
.catch Ljava/lang/Throwable; {:try_start_ae .. :try_end_f0} :catch_a3
goto :goto_85
.end method
.method public uncaughtException(Ljava/lang/Thread;Ljava/lang/Throwable;)V
.registers 4
invoke-virtual {p0, p2}, Lcom/amap/api/services/a/as;->a(Ljava/lang/Throwable;)V
iget-object v0, p0, Lcom/amap/api/services/a/as;->b:Ljava/lang/Thread$UncaughtExceptionHandler;
if-eqz v0, :cond_c
iget-object v0, p0, Lcom/amap/api/services/a/as;->b:Ljava/lang/Thread$UncaughtExceptionHandler;
invoke-interface {v0, p1, p2}, Ljava/lang/Thread$UncaughtExceptionHandler;->uncaughtException(Ljava/lang/Thread;Ljava/lang/Throwable;)V
:cond_c
return-void
.end method