NativeCrashHandler.smali
.class public Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;
.super Ljava/lang/Object;
.source "BUGLY"
# interfaces
.implements Lcom/tencent/bugly/crashreport/a;
# static fields
.field private static a:Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;
.field private static b:I
.field private static m:Z
.field private static n:Z
.field private static p:Z
# instance fields
.field private final c:Landroid/content/Context;
.field private final d:Lcom/tencent/bugly/crashreport/common/info/a;
.field private final e:Lcom/tencent/bugly/proguard/w;
.field private f:Lcom/tencent/bugly/crashreport/crash/jni/NativeExceptionHandler;
.field private g:Ljava/lang/String;
.field private final h:Z
.field private i:Z
.field private j:Z
.field private k:Z
.field private l:Z
.field private o:Lcom/tencent/bugly/crashreport/crash/b;
# direct methods
.method static constructor <clinit>()V
.registers 2
.prologue
const/4 v1, 0x1
const/4 v0, 0x0
.line 35
sput v1, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->b:I
.line 63
sput-boolean v0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->m:Z
.line 65
sput-boolean v0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->n:Z
.line 69
sput-boolean v1, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->p:Z
return-void
.end method
.method private constructor <init>(Landroid/content/Context;Lcom/tencent/bugly/crashreport/common/info/a;Lcom/tencent/bugly/crashreport/crash/b;Lcom/tencent/bugly/proguard/w;ZLjava/lang/String;)V
.registers 10
.annotation build Landroid/annotation/SuppressLint;
value = {
"SdCardPath"
}
.end annotation
.prologue
const/4 v0, 0x0
.line 125
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 49
iput-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->i:Z
.line 50
iput-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->j:Z
.line 52
iput-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->k:Z
.line 54
iput-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->l:Z
.line 126
invoke-static {p1}, Lcom/tencent/bugly/proguard/z;->a(Landroid/content/Context;)Landroid/content/Context;
move-result-object v0
iput-object v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->c:Landroid/content/Context;
.line 129
:try_start_12
invoke-static {p6}, Lcom/tencent/bugly/proguard/z;->a(Ljava/lang/String;)Z
:try_end_15
.catch Ljava/lang/Throwable; {:try_start_12 .. :try_end_15} :catch_3a
move-result v0
if-nez v0, :cond_2e
.line 138
:goto_18
iput-object p3, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->o:Lcom/tencent/bugly/crashreport/crash/b;
.line 139
iput-object p6, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->g:Ljava/lang/String;
.line 140
iput-object p2, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->d:Lcom/tencent/bugly/crashreport/common/info/a;
.line 141
iput-object p4, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->e:Lcom/tencent/bugly/proguard/w;
.line 142
iput-boolean p5, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->h:Z
.line 143
new-instance v0, Lcom/tencent/bugly/crashreport/crash/jni/a;
invoke-static {}, Lcom/tencent/bugly/crashreport/common/strategy/a;->a()Lcom/tencent/bugly/crashreport/common/strategy/a;
move-result-object v1
invoke-direct {v0, p1, p2, p3, v1}, Lcom/tencent/bugly/crashreport/crash/jni/a;-><init>(Landroid/content/Context;Lcom/tencent/bugly/crashreport/common/info/a;Lcom/tencent/bugly/crashreport/crash/b;Lcom/tencent/bugly/crashreport/common/strategy/a;)V
iput-object v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->f:Lcom/tencent/bugly/crashreport/crash/jni/NativeExceptionHandler;
.line 145
return-void
.line 132
:cond_2e
:try_start_2e
const-string v0, "bugly"
const/4 v1, 0x0
invoke-virtual {p1, v0, v1}, Landroid/content/Context;->getDir(Ljava/lang/String;I)Ljava/io/File;
move-result-object v0
invoke-virtual {v0}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;
:try_end_38
.catch Ljava/lang/Throwable; {:try_start_2e .. :try_end_38} :catch_3a
move-result-object p6
goto :goto_18
.line 135
:catch_3a
move-exception v0
invoke-static {p1}, Lcom/tencent/bugly/crashreport/common/info/a;->a(Landroid/content/Context;)Lcom/tencent/bugly/crashreport/common/info/a;
move-result-object v0
iget-object v0, v0, Lcom/tencent/bugly/crashreport/common/info/a;->c:Ljava/lang/String;
.line 136
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "/data/data/"
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
const-string v1, "/app_bugly"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p6
goto :goto_18
.end method
.method static synthetic a(Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;)Landroid/content/Context;
.registers 2
.prologue
.line 31
iget-object v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->c:Landroid/content/Context;
return-object v0
.end method
.method private declared-synchronized a(Z)V
.registers 11
.prologue
const/4 v6, 0x2
const/4 v1, 0x1
.line 288
monitor-enter p0
:try_start_3
iget-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->k:Z
if-eqz v0, :cond_11
.line 289
const-string v0, "[Native] Native crash report has already registered."
const/4 v1, 0x0
new-array v1, v1, [Ljava/lang/Object;
invoke-static {v0, v1}, Lcom/tencent/bugly/proguard/x;->d(Ljava/lang/String;[Ljava/lang/Object;)Z
:try_end_f
.catchall {:try_start_3 .. :try_end_f} :catchall_11a
.line 358
:goto_f
monitor-exit p0
return-void
.line 293
:cond_11
:try_start_11
iget-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->j:Z
:try_end_13
.catchall {:try_start_11 .. :try_end_13} :catchall_11a
if-eqz v0, :cond_14c
.line 295
:try_start_15
const-string v0, "SDK INT IS %d"
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
sget v4, Landroid/os/Build$VERSION;->SDK_INT:I
invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v4
aput-object v4, v2, v3
invoke-static {v0, v2}, Lcom/tencent/bugly/proguard/x;->c(Ljava/lang/String;[Ljava/lang/Object;)Z
.line 296
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0x1c
if-gt v0, v2, :cond_43
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0x1a
if-lt v0, v2, :cond_43
.line 297
iget-object v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->c:Landroid/content/Context;
invoke-static {v0}, Lcom/tencent/bugly/crashreport/common/info/b;->d(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
const-string v2, "XiaoMi/MIUI/"
invoke-virtual {v0, v2}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_43
.line 298
const/4 v0, 0x2
sput v0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->b:I
.line 301
:cond_43
iget-object v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->g:Ljava/lang/String;
sget v2, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->b:I
invoke-virtual {p0, v0, p1, v2}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->regist(Ljava/lang/String;ZI)Ljava/lang/String;
move-result-object v2
.line 302
if-eqz v2, :cond_112
.line 303
const-string v0, "[Native] Native Crash Report enable."
const/4 v3, 0x0
new-array v3, v3, [Ljava/lang/Object;
invoke-static {v0, v3}, Lcom/tencent/bugly/proguard/x;->a(Ljava/lang/String;[Ljava/lang/Object;)Z
.line 304
const-string v0, "[Native] Check extra jni for Bugly NDK v%s"
const/4 v3, 0x1
new-array v3, v3, [Ljava/lang/Object;
const/4 v4, 0x0
aput-object v2, v3, v4
invoke-static {v0, v3}, Lcom/tencent/bugly/proguard/x;->c(Ljava/lang/String;[Ljava/lang/Object;)Z
const-string v0, "2.1.1"
const-string v3, "."
const-string v4, ""
invoke-virtual {v0, v3, v4}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
move-result-object v3
const-string v0, "2.3.0"
const-string v4, "."
const-string v5, ""
invoke-virtual {v0, v4, v5}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
move-result-object v4
const-string v0, "."
const-string v5, ""
invoke-virtual {v2, v0, v5}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/String;->length()I
move-result v5
if-ne v5, v6, :cond_11d
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
const-string v1, "0"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
:try_end_94
.catch Ljava/lang/Throwable; {:try_start_15 .. :try_end_94} :catch_109
.catchall {:try_start_15 .. :try_end_94} :catchall_11a
move-result-object v0
:cond_95
:goto_95
:try_start_95
invoke-static {v0}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
move-result v1
invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
move-result v3
if-lt v1, v3, :cond_a2
const/4 v1, 0x1
sput-boolean v1, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->m:Z
:cond_a2
invoke-static {v0}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
move-result v0
invoke-static {v4}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
move-result v1
if-lt v0, v1, :cond_af
const/4 v0, 0x1
sput-boolean v0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->n:Z
:try_end_af
.catch Ljava/lang/Throwable; {:try_start_95 .. :try_end_af} :catch_244
.catchall {:try_start_95 .. :try_end_af} :catchall_11a
:cond_af
:goto_af
:try_start_af
sget-boolean v0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->n:Z
if-eqz v0, :cond_138
const-string v0, "[Native] Info setting jni can be accessed."
const/4 v1, 0x0
new-array v1, v1, [Ljava/lang/Object;
invoke-static {v0, v1}, Lcom/tencent/bugly/proguard/x;->a(Ljava/lang/String;[Ljava/lang/Object;)Z
:goto_bb
sget-boolean v0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->m:Z
if-eqz v0, :cond_142
const-string v0, "[Native] Extra jni can be accessed."
const/4 v1, 0x0
new-array v1, v1, [Ljava/lang/Object;
invoke-static {v0, v1}, Lcom/tencent/bugly/proguard/x;->a(Ljava/lang/String;[Ljava/lang/Object;)Z
.line 305
:goto_c7
iget-object v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->d:Lcom/tencent/bugly/crashreport/common/info/a;
iput-object v2, v0, Lcom/tencent/bugly/crashreport/common/info/a;->o:Ljava/lang/String;
.line 306
const-string v0, "-"
iget-object v1, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->d:Lcom/tencent/bugly/crashreport/common/info/a;
iget-object v1, v1, Lcom/tencent/bugly/crashreport/common/info/a;->o:Ljava/lang/String;
invoke-virtual {v0, v1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 307
iget-object v1, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->d:Lcom/tencent/bugly/crashreport/common/info/a;
iget-object v1, v1, Lcom/tencent/bugly/crashreport/common/info/a;->f:Ljava/lang/String;
invoke-virtual {v1, v0}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v0
if-nez v0, :cond_f5
.line 308
iget-object v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->d:Lcom/tencent/bugly/crashreport/common/info/a;
iget-object v1, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->d:Lcom/tencent/bugly/crashreport/common/info/a;
iget-object v1, v1, Lcom/tencent/bugly/crashreport/common/info/a;->f:Ljava/lang/String;
const-string v2, "-"
invoke-virtual {v1, v2}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
iget-object v2, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->d:Lcom/tencent/bugly/crashreport/common/info/a;
iget-object v2, v2, Lcom/tencent/bugly/crashreport/common/info/a;->o:Ljava/lang/String;
invoke-virtual {v1, v2}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
iput-object v1, v0, Lcom/tencent/bugly/crashreport/common/info/a;->f:Ljava/lang/String;
.line 310
:cond_f5
const-string v0, "comInfo.sdkVersion %s"
const/4 v1, 0x1
new-array v1, v1, [Ljava/lang/Object;
const/4 v2, 0x0
iget-object v3, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->d:Lcom/tencent/bugly/crashreport/common/info/a;
iget-object v3, v3, Lcom/tencent/bugly/crashreport/common/info/a;->f:Ljava/lang/String;
aput-object v3, v1, v2
invoke-static {v0, v1}, Lcom/tencent/bugly/proguard/x;->a(Ljava/lang/String;[Ljava/lang/Object;)Z
.line 313
const/4 v0, 0x1
iput-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->k:Z
:try_end_107
.catch Ljava/lang/Throwable; {:try_start_af .. :try_end_107} :catch_109
.catchall {:try_start_af .. :try_end_107} :catchall_11a
goto/16 :goto_f
.line 317
:catch_109
move-exception v0
:try_start_10a
const-string v0, "[Native] Failed to load Bugly SO file."
const/4 v1, 0x0
new-array v1, v1, [Ljava/lang/Object;
invoke-static {v0, v1}, Lcom/tencent/bugly/proguard/x;->c(Ljava/lang/String;[Ljava/lang/Object;)Z
.line 356
:cond_112
:goto_112
const/4 v0, 0x0
iput-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->j:Z
.line 357
const/4 v0, 0x0
iput-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->i:Z
:try_end_118
.catchall {:try_start_10a .. :try_end_118} :catchall_11a
goto/16 :goto_f
.line 288
:catchall_11a
move-exception v0
monitor-exit p0
throw v0
.line 304
:cond_11d
:try_start_11d
invoke-virtual {v0}, Ljava/lang/String;->length()I
move-result v5
if-ne v5, v1, :cond_95
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
const-string v1, "00"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
goto/16 :goto_95
:cond_138
const-string v0, "[Native] Info setting jni can not be accessed."
const/4 v1, 0x0
new-array v1, v1, [Ljava/lang/Object;
invoke-static {v0, v1}, Lcom/tencent/bugly/proguard/x;->d(Ljava/lang/String;[Ljava/lang/Object;)Z
goto/16 :goto_bb
:cond_142
const-string v0, "[Native] Extra jni can not be accessed."
const/4 v1, 0x0
new-array v1, v1, [Ljava/lang/Object;
invoke-static {v0, v1}, Lcom/tencent/bugly/proguard/x;->d(Ljava/lang/String;[Ljava/lang/Object;)Z
:try_end_14a
.catch Ljava/lang/Throwable; {:try_start_11d .. :try_end_14a} :catch_109
.catchall {:try_start_11d .. :try_end_14a} :catchall_11a
goto/16 :goto_c7
.line 319
:cond_14c
:try_start_14c
iget-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->i:Z
:try_end_14e
.catchall {:try_start_14c .. :try_end_14e} :catchall_11a
if-eqz v0, :cond_112
.line 321
:try_start_150
const-string v2, "com.tencent.feedback.eup.jni.NativeExceptionUpload"
const-string/jumbo v3, "registNativeExceptionHandler2"
const/4 v4, 0x0
const/4 v0, 0x4
new-array v5, v0, [Ljava/lang/Class;
const/4 v0, 0x0
const-class v6, Ljava/lang/String;
aput-object v6, v5, v0
const/4 v0, 0x1
const-class v6, Ljava/lang/String;
aput-object v6, v5, v0
const/4 v0, 0x2
sget-object v6, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;
aput-object v6, v5, v0
const/4 v0, 0x3
sget-object v6, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;
aput-object v6, v5, v0
const/4 v0, 0x4
new-array v6, v0, [Ljava/lang/Object;
const/4 v0, 0x0
iget-object v7, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->g:Ljava/lang/String;
aput-object v7, v6, v0
const/4 v0, 0x1
iget-object v7, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->c:Landroid/content/Context;
const/4 v8, 0x0
invoke-static {v7, v8}, Lcom/tencent/bugly/crashreport/common/info/b;->a(Landroid/content/Context;Z)Ljava/lang/String;
move-result-object v7
aput-object v7, v6, v0
const/4 v7, 0x2
if-eqz p1, :cond_23f
move v0, v1
:goto_183
invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v0
aput-object v0, v6, v7
const/4 v0, 0x3
const/4 v7, 0x1
invoke-static {v7}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v7
aput-object v7, v6, v0
invoke-static {v2, v3, v4, v5, v6}, Lcom/tencent/bugly/proguard/z;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Class;[Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/String;
.line 326
if-nez v0, :cond_1d7
.line 327
const-string v0, "com.tencent.feedback.eup.jni.NativeExceptionUpload"
const-string/jumbo v2, "registNativeExceptionHandler"
const/4 v3, 0x0
const/4 v4, 0x3
new-array v4, v4, [Ljava/lang/Class;
const/4 v5, 0x0
const-class v6, Ljava/lang/String;
aput-object v6, v4, v5
const/4 v5, 0x1
const-class v6, Ljava/lang/String;
aput-object v6, v4, v5
const/4 v5, 0x2
sget-object v6, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;
aput-object v6, v4, v5
const/4 v5, 0x3
new-array v5, v5, [Ljava/lang/Object;
const/4 v6, 0x0
iget-object v7, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->g:Ljava/lang/String;
aput-object v7, v5, v6
const/4 v6, 0x1
iget-object v7, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->c:Landroid/content/Context;
const/4 v8, 0x0
invoke-static {v7, v8}, Lcom/tencent/bugly/crashreport/common/info/b;->a(Landroid/content/Context;Z)Ljava/lang/String;
move-result-object v7
aput-object v7, v5, v6
const/4 v6, 0x2
invoke-static {}, Lcom/tencent/bugly/crashreport/common/info/a;->b()Lcom/tencent/bugly/crashreport/common/info/a;
invoke-static {}, Lcom/tencent/bugly/crashreport/common/info/a;->K()I
move-result v7
invoke-static {v7}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v7
aput-object v7, v5, v6
invoke-static {v0, v2, v3, v4, v5}, Lcom/tencent/bugly/proguard/z;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Class;[Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/String;
.line 334
:cond_1d7
if-eqz v0, :cond_112
.line 335
const/4 v2, 0x1
iput-boolean v2, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->k:Z
.line 336
iget-object v2, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->d:Lcom/tencent/bugly/crashreport/common/info/a;
iput-object v0, v2, Lcom/tencent/bugly/crashreport/common/info/a;->o:Ljava/lang/String;
.line 337
const-string v2, "com.tencent.feedback.eup.jni.NativeExceptionUpload"
const-string v3, "checkExtraJni"
const/4 v4, 0x0
const/4 v5, 0x1
new-array v5, v5, [Ljava/lang/Class;
const/4 v6, 0x0
const-class v7, Ljava/lang/String;
aput-object v7, v5, v6
const/4 v6, 0x1
new-array v6, v6, [Ljava/lang/Object;
const/4 v7, 0x0
aput-object v0, v6, v7
invoke-static {v2, v3, v4, v5, v6}, Lcom/tencent/bugly/proguard/z;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Class;[Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/Boolean;
.line 340
if-eqz v0, :cond_201
.line 341
invoke-virtual {v0}, Ljava/lang/Boolean;->booleanValue()Z
move-result v0
sput-boolean v0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->m:Z
.line 345
:cond_201
const-string v0, "com.tencent.feedback.eup.jni.NativeExceptionUpload"
const-string v2, "enableHandler"
const/4 v3, 0x0
const/4 v4, 0x1
new-array v4, v4, [Ljava/lang/Class;
const/4 v5, 0x0
sget-object v6, Ljava/lang/Boolean;->TYPE:Ljava/lang/Class;
aput-object v6, v4, v5
const/4 v5, 0x1
new-array v5, v5, [Ljava/lang/Object;
const/4 v6, 0x0
const/4 v7, 0x1
invoke-static {v7}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object v7
aput-object v7, v5, v6
invoke-static {v0, v2, v3, v4, v5}, Lcom/tencent/bugly/proguard/z;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Class;[Ljava/lang/Object;)Ljava/lang/Object;
.line 347
if-eqz p1, :cond_242
move v0, v1
.line 348
:goto_21f
const-string v1, "com.tencent.feedback.eup.jni.NativeExceptionUpload"
const-string/jumbo v2, "setLogMode"
const/4 v3, 0x0
const/4 v4, 0x1
new-array v4, v4, [Ljava/lang/Class;
const/4 v5, 0x0
sget-object v6, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;
aput-object v6, v4, v5
const/4 v5, 0x1
new-array v5, v5, [Ljava/lang/Object;
const/4 v6, 0x0
invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v0
aput-object v0, v5, v6
invoke-static {v1, v2, v3, v4, v5}, Lcom/tencent/bugly/proguard/z;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Class;[Ljava/lang/Object;)Ljava/lang/Object;
:try_end_23a
.catch Ljava/lang/Throwable; {:try_start_150 .. :try_end_23a} :catch_23c
.catchall {:try_start_150 .. :try_end_23a} :catchall_11a
goto/16 :goto_f
:catch_23c
move-exception v0
goto/16 :goto_112
.line 321
:cond_23f
const/4 v0, 0x5
goto/16 :goto_183
.line 347
:cond_242
const/4 v0, 0x5
goto :goto_21f
:catch_244
move-exception v0
goto/16 :goto_af
.end method
.method private a(ILjava/lang/String;)Z
.registers 6
.prologue
const/4 v0, 0x0
.line 755
iget-boolean v1, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->j:Z
if-eqz v1, :cond_9
sget-boolean v1, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->n:Z
if-nez v1, :cond_a
.line 768
:cond_9
:goto_9
return v0
.line 759
:cond_a
:try_start_a
invoke-virtual {p0, p1, p2}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->setNativeInfo(ILjava/lang/String;)V
:try_end_d
.catch Ljava/lang/UnsatisfiedLinkError; {:try_start_a .. :try_end_d} :catch_f
.catch Ljava/lang/Throwable; {:try_start_a .. :try_end_d} :catch_13
.line 760
const/4 v0, 0x1
goto :goto_9
.line 762
:catch_f
move-exception v1
sput-boolean v0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->n:Z
goto :goto_9
.line 764
:catch_13
move-exception v1
.line 765
invoke-static {v1}, Lcom/tencent/bugly/proguard/x;->a(Ljava/lang/Throwable;)Z
move-result v2
if-nez v2, :cond_9
.line 766
invoke-virtual {v1}, Ljava/lang/Throwable;->printStackTrace()V
goto :goto_9
.end method
.method static synthetic a(Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;ILjava/lang/String;)Z
.registers 4
.prologue
.line 31
const/16 v0, 0x3e7
invoke-direct {p0, v0, p2}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->a(ILjava/lang/String;)Z
move-result v0
return v0
.end method
.method private static a(Ljava/lang/String;Z)Z
.registers 7
.prologue
const/4 v0, 0x1
const/4 v3, 0x0
.line 445
.line 447
:try_start_2
const-string v1, "[Native] Trying to load so: %s"
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v4, 0x0
aput-object p0, v2, v4
invoke-static {v1, v2}, Lcom/tencent/bugly/proguard/x;->a(Ljava/lang/String;[Ljava/lang/Object;)Z
.line 448
if-eqz p1, :cond_1e
.line 449
invoke-static {p0}, Ljava/lang/System;->load(Ljava/lang/String;)V
:try_end_12
.catch Ljava/lang/Throwable; {:try_start_2 .. :try_end_12} :catch_22
.line 454
:goto_12
:try_start_12
const-string v1, "[Native] Successfully loaded SO: %s"
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v4, 0x0
aput-object p0, v2, v4
invoke-static {v1, v2}, Lcom/tencent/bugly/proguard/x;->a(Ljava/lang/String;[Ljava/lang/Object;)Z
:try_end_1d
.catch Ljava/lang/Throwable; {:try_start_12 .. :try_end_1d} :catch_39
.line 459
:goto_1d
return v0
.line 451
:cond_1e
:try_start_1e
invoke-static {p0}, Ljava/lang/System;->loadLibrary(Ljava/lang/String;)V
:try_end_21
.catch Ljava/lang/Throwable; {:try_start_1e .. :try_end_21} :catch_22
goto :goto_12
.line 455
:catch_22
move-exception v1
move-object v2, v1
move v1, v3
.line 456
:goto_25
invoke-virtual {v2}, Ljava/lang/Throwable;->getMessage()Ljava/lang/String;
move-result-object v2
new-array v4, v3, [Ljava/lang/Object;
invoke-static {v2, v4}, Lcom/tencent/bugly/proguard/x;->d(Ljava/lang/String;[Ljava/lang/Object;)Z
.line 457
const-string v2, "[Native] Failed to load so: %s"
new-array v0, v0, [Ljava/lang/Object;
aput-object p0, v0, v3
invoke-static {v2, v0}, Lcom/tencent/bugly/proguard/x;->d(Ljava/lang/String;[Ljava/lang/Object;)Z
move v0, v1
goto :goto_1d
.line 455
:catch_39
move-exception v1
move-object v2, v1
move v1, v0
goto :goto_25
.end method
.method static synthetic b(Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;)Ljava/lang/String;
.registers 2
.prologue
.line 31
iget-object v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->g:Ljava/lang/String;
return-object v0
.end method
.method private declared-synchronized b(Z)V
.registers 3
.prologue
.line 577
monitor-enter p0
if-eqz p1, :cond_8
.line 578
:try_start_3
invoke-virtual {p0}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->startNativeMonitor()V
:try_end_6
.catchall {:try_start_3 .. :try_end_6} :catchall_c
.line 582
:goto_6
monitor-exit p0
return-void
.line 580
:cond_8
:try_start_8
invoke-direct {p0}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->c()V
:try_end_b
.catchall {:try_start_8 .. :try_end_b} :catchall_c
goto :goto_6
.line 577
:catchall_c
move-exception v0
monitor-exit p0
throw v0
.end method
.method static synthetic b()Z
.registers 1
.prologue
.line 31
sget-boolean v0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->p:Z
return v0
.end method
.method static synthetic c(Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;)Lcom/tencent/bugly/crashreport/crash/jni/NativeExceptionHandler;
.registers 2
.prologue
.line 31
iget-object v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->f:Lcom/tencent/bugly/crashreport/crash/jni/NativeExceptionHandler;
return-object v0
.end method
.method private declared-synchronized c()V
.registers 8
.prologue
.line 466
monitor-enter p0
:try_start_1
iget-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->k:Z
if-nez v0, :cond_f
.line 467
const-string v0, "[Native] Native crash report has already unregistered."
const/4 v1, 0x0
new-array v1, v1, [Ljava/lang/Object;
invoke-static {v0, v1}, Lcom/tencent/bugly/proguard/x;->d(Ljava/lang/String;[Ljava/lang/Object;)Z
:try_end_d
.catchall {:try_start_1 .. :try_end_d} :catchall_61
.line 493
:goto_d
monitor-exit p0
return-void
.line 471
:cond_f
:try_start_f
invoke-virtual {p0}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->unregist()Ljava/lang/String;
move-result-object v0
.line 472
if-eqz v0, :cond_2a
.line 473
const-string v0, "[Native] Successfully closed native crash report."
const/4 v1, 0x0
new-array v1, v1, [Ljava/lang/Object;
invoke-static {v0, v1}, Lcom/tencent/bugly/proguard/x;->a(Ljava/lang/String;[Ljava/lang/Object;)Z
.line 474
const/4 v0, 0x0
iput-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->k:Z
:try_end_20
.catch Ljava/lang/Throwable; {:try_start_f .. :try_end_20} :catch_21
.catchall {:try_start_f .. :try_end_20} :catchall_61
goto :goto_d
.line 477
:catch_21
move-exception v0
.line 478
:try_start_22
const-string v0, "[Native] Failed to close native crash report."
const/4 v1, 0x0
new-array v1, v1, [Ljava/lang/Object;
invoke-static {v0, v1}, Lcom/tencent/bugly/proguard/x;->c(Ljava/lang/String;[Ljava/lang/Object;)Z
:try_end_2a
.catchall {:try_start_22 .. :try_end_2a} :catchall_61
.line 482
:cond_2a
:try_start_2a
const-string v0, "com.tencent.feedback.eup.jni.NativeExceptionUpload"
const-string v1, "enableHandler"
const/4 v2, 0x0
const/4 v3, 0x1
new-array v3, v3, [Ljava/lang/Class;
const/4 v4, 0x0
sget-object v5, Ljava/lang/Boolean;->TYPE:Ljava/lang/Class;
aput-object v5, v3, v4
const/4 v4, 0x1
new-array v4, v4, [Ljava/lang/Object;
const/4 v5, 0x0
const/4 v6, 0x0
invoke-static {v6}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object v6
aput-object v6, v4, v5
invoke-static {v0, v1, v2, v3, v4}, Lcom/tencent/bugly/proguard/z;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Class;[Ljava/lang/Object;)Ljava/lang/Object;
.line 484
const/4 v0, 0x0
iput-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->k:Z
.line 485
const-string v0, "[Native] Successfully closed native crash report."
const/4 v1, 0x0
new-array v1, v1, [Ljava/lang/Object;
invoke-static {v0, v1}, Lcom/tencent/bugly/proguard/x;->a(Ljava/lang/String;[Ljava/lang/Object;)Z
:try_end_50
.catch Ljava/lang/Throwable; {:try_start_2a .. :try_end_50} :catch_51
.catchall {:try_start_2a .. :try_end_50} :catchall_61
goto :goto_d
.line 488
:catch_51
move-exception v0
:try_start_52
const-string v0, "[Native] Failed to close native crash report."
const/4 v1, 0x0
new-array v1, v1, [Ljava/lang/Object;
invoke-static {v0, v1}, Lcom/tencent/bugly/proguard/x;->c(Ljava/lang/String;[Ljava/lang/Object;)Z
.line 491
const/4 v0, 0x0
iput-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->j:Z
.line 492
const/4 v0, 0x0
iput-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->i:Z
:try_end_60
.catchall {:try_start_52 .. :try_end_60} :catchall_61
goto :goto_d
.line 466
:catchall_61
move-exception v0
monitor-exit p0
throw v0
.end method
.method private declared-synchronized c(Z)V
.registers 6
.prologue
.line 595
monitor-enter p0
:try_start_1
iget-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->l:Z
if-eq v0, p1, :cond_17
.line 596
const-string/jumbo v0, "user change native %b"
const/4 v1, 0x1
new-array v1, v1, [Ljava/lang/Object;
const/4 v2, 0x0
invoke-static {p1}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object v3
aput-object v3, v1, v2
invoke-static {v0, v1}, Lcom/tencent/bugly/proguard/x;->a(Ljava/lang/String;[Ljava/lang/Object;)Z
.line 597
iput-boolean p1, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->l:Z
:try_end_17
.catchall {:try_start_1 .. :try_end_17} :catchall_19
.line 599
:cond_17
monitor-exit p0
return-void
.line 595
:catchall_19
move-exception v0
monitor-exit p0
throw v0
.end method
.method static synthetic d(Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;)Lcom/tencent/bugly/crashreport/crash/b;
.registers 2
.prologue
.line 31
iget-object v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->o:Lcom/tencent/bugly/crashreport/crash/b;
return-object v0
.end method
.method public static declared-synchronized getInstance()Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;
.registers 2
.prologue
.line 171
const-class v0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;
monitor-enter v0
:try_start_3
sget-object v1, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->a:Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;
:try_end_5
.catchall {:try_start_3 .. :try_end_5} :catchall_7
monitor-exit v0
return-object v1
:catchall_7
move-exception v1
monitor-exit v0
throw v1
.end method
.method public static declared-synchronized getInstance(Landroid/content/Context;Lcom/tencent/bugly/crashreport/common/info/a;Lcom/tencent/bugly/crashreport/crash/b;Lcom/tencent/bugly/crashreport/common/strategy/a;Lcom/tencent/bugly/proguard/w;ZLjava/lang/String;)Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;
.registers 15
.prologue
.line 163
const-class v7, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;
monitor-enter v7
:try_start_3
sget-object v0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->a:Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;
if-nez v0, :cond_14
.line 164
new-instance v0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;
move-object v1, p0
move-object v2, p1
move-object v3, p2
move-object v4, p4
move v5, p5
move-object v6, p6
invoke-direct/range {v0 .. v6}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;-><init>(Landroid/content/Context;Lcom/tencent/bugly/crashreport/common/info/a;Lcom/tencent/bugly/crashreport/crash/b;Lcom/tencent/bugly/proguard/w;ZLjava/lang/String;)V
sput-object v0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->a:Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;
.line 167
:cond_14
sget-object v0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->a:Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;
:try_end_16
.catchall {:try_start_3 .. :try_end_16} :catchall_18
monitor-exit v7
return-object v0
.line 163
:catchall_18
move-exception v0
monitor-exit v7
throw v0
.end method
.method public static isShouldHandleInJava()Z
.registers 1
.prologue
.line 200
sget-boolean v0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->p:Z
return v0
.end method
.method public static setShouldHandleInJava(Z)V
.registers 4
.prologue
.line 188
sput-boolean p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->p:Z
.line 189
sget-object v0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->a:Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;
if-eqz v0, :cond_1a
.line 190
sget-object v0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->a:Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;
const/16 v1, 0x3e7
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-direct {v0, v1, v2}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->a(ILjava/lang/String;)Z
.line 192
:cond_1a
return-void
.end method
# virtual methods
.method protected final a()V
.registers 15
.prologue
const/4 v0, 0x0
.line 525
invoke-static {}, Lcom/tencent/bugly/proguard/z;->b()J
move-result-wide v2
sget-wide v4, Lcom/tencent/bugly/crashreport/crash/c;->g:J
sub-long v4, v2, v4
.line 526
invoke-static {}, Lcom/tencent/bugly/proguard/z;->b()J
move-result-wide v2
const-wide/32 v6, 0x5265c00
add-long/2addr v6, v2
.line 527
new-instance v1, Ljava/io/File;
iget-object v2, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->g:Ljava/lang/String;
invoke-direct {v1, v2}, Ljava/io/File;-><init>(Ljava/lang/String;)V
.line 528
invoke-virtual {v1}, Ljava/io/File;->exists()Z
move-result v2
if-eqz v2, :cond_2d
invoke-virtual {v1}, Ljava/io/File;->isDirectory()Z
move-result v2
if-eqz v2, :cond_2d
.line 530
:try_start_24
invoke-virtual {v1}, Ljava/io/File;->listFiles()[Ljava/io/File;
move-result-object v3
.line 531
if-eqz v3, :cond_2d
array-length v1, v3
if-nez v1, :cond_2e
.line 554
:cond_2d
:goto_2d
return-void
.line 536
:cond_2e
array-length v8, v3
move v2, v0
move v1, v0
:goto_31
if-ge v2, v8, :cond_5d
aget-object v9, v3, v2
.line 537
invoke-virtual {v9}, Ljava/io/File;->lastModified()J
move-result-wide v10
.line 538
cmp-long v12, v10, v4
if-ltz v12, :cond_41
cmp-long v10, v10, v6
if-ltz v10, :cond_5a
.line 539
:cond_41
const-string v10, "[Native] Delete record file: %s"
const/4 v11, 0x1
new-array v11, v11, [Ljava/lang/Object;
const/4 v12, 0x0
invoke-virtual {v9}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;
move-result-object v13
aput-object v13, v11, v12
invoke-static {v10, v11}, Lcom/tencent/bugly/proguard/x;->a(Ljava/lang/String;[Ljava/lang/Object;)Z
.line 542
add-int/lit8 v1, v1, 0x1
.line 544
invoke-virtual {v9}, Ljava/io/File;->delete()Z
move-result v9
if-eqz v9, :cond_5a
.line 545
add-int/lit8 v0, v0, 0x1
.line 536
:cond_5a
add-int/lit8 v2, v2, 0x1
goto :goto_31
.line 548
:cond_5d
const-string v2, "[Native] Number of record files overdue: %d, has deleted: %d"
const/4 v3, 0x2
new-array v3, v3, [Ljava/lang/Object;
const/4 v4, 0x0
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
aput-object v1, v3, v4
const/4 v1, 0x1
invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v0
aput-object v0, v3, v1
invoke-static {v2, v3}, Lcom/tencent/bugly/proguard/x;->c(Ljava/lang/String;[Ljava/lang/Object;)Z
:try_end_73
.catch Ljava/lang/Throwable; {:try_start_24 .. :try_end_73} :catch_74
goto :goto_2d
.line 550
:catch_74
move-exception v0
.line 551
invoke-static {v0}, Lcom/tencent/bugly/proguard/x;->a(Ljava/lang/Throwable;)Z
goto :goto_2d
.end method
.method public appendLogToNative(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
.registers 11
.prologue
const/4 v1, 0x0
.line 648
iget-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->i:Z
if-nez v0, :cond_b
iget-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->j:Z
if-nez v0, :cond_b
move v0, v1
.line 674
:goto_a
return v0
.line 651
:cond_b
sget-boolean v0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->m:Z
if-nez v0, :cond_11
move v0, v1
.line 652
goto :goto_a
.line 654
:cond_11
if-eqz p1, :cond_17
if-eqz p2, :cond_17
if-nez p3, :cond_19
:cond_17
move v0, v1
.line 655
goto :goto_a
.line 658
:cond_19
:try_start_19
iget-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->j:Z
if-eqz v0, :cond_22
.line 659
invoke-virtual {p0, p1, p2, p3}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->appendNativeLog(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
goto :goto_a
.line 661
:cond_22
const-string v0, "com.tencent.feedback.eup.jni.NativeExceptionUpload"
const-string v2, "appendNativeLog"
const/4 v3, 0x0
const/4 v4, 0x3
new-array v4, v4, [Ljava/lang/Class;
const/4 v5, 0x0
const-class v6, Ljava/lang/String;
aput-object v6, v4, v5
const/4 v5, 0x1
const-class v6, Ljava/lang/String;
aput-object v6, v4, v5
const/4 v5, 0x2
const-class v6, Ljava/lang/String;
aput-object v6, v4, v5
const/4 v5, 0x3
new-array v5, v5, [Ljava/lang/Object;
const/4 v6, 0x0
aput-object p1, v5, v6
const/4 v6, 0x1
aput-object p2, v5, v6
const/4 v6, 0x2
aput-object p3, v5, v6
invoke-static {v0, v2, v3, v4, v5}, Lcom/tencent/bugly/proguard/z;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Class;[Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/Boolean;
.line 665
if-eqz v0, :cond_52
invoke-virtual {v0}, Ljava/lang/Boolean;->booleanValue()Z
:try_end_50
.catch Ljava/lang/UnsatisfiedLinkError; {:try_start_19 .. :try_end_50} :catch_54
.catch Ljava/lang/Throwable; {:try_start_19 .. :try_end_50} :catch_59
move-result v0
goto :goto_a
:cond_52
move v0, v1
goto :goto_a
.line 668
:catch_54
move-exception v0
sput-boolean v1, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->m:Z
move v0, v1
.line 669
goto :goto_a
.line 670
:catch_59
move-exception v0
.line 671
invoke-static {v0}, Lcom/tencent/bugly/proguard/x;->a(Ljava/lang/Throwable;)Z
move-result v2
if-nez v2, :cond_63
.line 672
invoke-virtual {v0}, Ljava/lang/Throwable;->printStackTrace()V
:cond_63
move v0, v1
.line 674
goto :goto_a
.end method
.method protected native appendNativeLog(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
.end method
.method protected native appendWholeNativeLog(Ljava/lang/String;)Z
.end method
.method public checkUploadRecordCrash()V
.registers 3
.prologue
.line 408
iget-object v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->e:Lcom/tencent/bugly/proguard/w;
new-instance v1, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler$1;
invoke-direct {v1, p0}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler$1;-><init>(Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;)V
invoke-virtual {v0, v1}, Lcom/tencent/bugly/proguard/w;->a(Ljava/lang/Runnable;)Z
.line 442
return-void
.end method
.method public filterSigabrtSysLog()Z
.registers 3
.prologue
.line 778
const/16 v0, 0x3e6
const-string/jumbo v1, "true"
invoke-direct {p0, v0, v1}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->a(ILjava/lang/String;)Z
move-result v0
return v0
.end method
.method public declared-synchronized getDumpFilePath()Ljava/lang/String;
.registers 2
.prologue
.line 175
monitor-enter p0
:try_start_1
iget-object v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->g:Ljava/lang/String;
:try_end_3
.catchall {:try_start_1 .. :try_end_3} :catchall_5
monitor-exit p0
return-object v0
:catchall_5
move-exception v0
monitor-exit p0
throw v0
.end method
.method public getLogFromNative()Ljava/lang/String;
.registers 7
.prologue
const/4 v1, 0x0
.line 684
iget-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->i:Z
if-nez v0, :cond_b
iget-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->j:Z
if-nez v0, :cond_b
move-object v0, v1
.line 706
:goto_a
return-object v0
.line 687
:cond_b
sget-boolean v0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->m:Z
if-nez v0, :cond_11
move-object v0, v1
.line 688
goto :goto_a
.line 691
:cond_11
:try_start_11
iget-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->j:Z
if-eqz v0, :cond_1a
.line 692
invoke-virtual {p0}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->getNativeLog()Ljava/lang/String;
move-result-object v0
goto :goto_a
.line 694
:cond_1a
const-string v0, "com.tencent.feedback.eup.jni.NativeExceptionUpload"
const-string v2, "getNativeLog"
const/4 v3, 0x0
const/4 v4, 0x0
const/4 v5, 0x0
invoke-static {v0, v2, v3, v4, v5}, Lcom/tencent/bugly/proguard/z;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Class;[Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/String;
:try_end_27
.catch Ljava/lang/UnsatisfiedLinkError; {:try_start_11 .. :try_end_27} :catch_28
.catch Ljava/lang/Throwable; {:try_start_11 .. :try_end_27} :catch_2e
goto :goto_a
.line 700
:catch_28
move-exception v0
const/4 v0, 0x0
sput-boolean v0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->m:Z
move-object v0, v1
.line 701
goto :goto_a
.line 702
:catch_2e
move-exception v0
.line 703
invoke-static {v0}, Lcom/tencent/bugly/proguard/x;->a(Ljava/lang/Throwable;)Z
move-result v2
if-nez v2, :cond_38
.line 704
invoke-virtual {v0}, Ljava/lang/Throwable;->printStackTrace()V
:cond_38
move-object v0, v1
.line 706
goto :goto_a
.end method
.method public getNativeExceptionHandler()Lcom/tencent/bugly/crashreport/crash/jni/NativeExceptionHandler;
.registers 2
.prologue
.line 518
iget-object v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->f:Lcom/tencent/bugly/crashreport/crash/jni/NativeExceptionHandler;
return-object v0
.end method
.method protected native getNativeKeyValueList()Ljava/lang/String;
.end method
.method protected native getNativeLog()Ljava/lang/String;
.end method
.method public declared-synchronized isUserOpened()Z
.registers 2
.prologue
.line 588
monitor-enter p0
:try_start_1
iget-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->l:Z
:try_end_3
.catchall {:try_start_1 .. :try_end_3} :catchall_5
monitor-exit p0
return v0
:catchall_5
move-exception v0
monitor-exit p0
throw v0
.end method
.method public declared-synchronized onStrategyChanged(Lcom/tencent/bugly/crashreport/common/strategy/StrategyBean;)V
.registers 8
.prologue
const/4 v0, 0x1
const/4 v1, 0x0
.line 626
monitor-enter p0
if-eqz p1, :cond_1d
:try_start_5
iget-boolean v2, p1, Lcom/tencent/bugly/crashreport/common/strategy/StrategyBean;->g:Z
iget-boolean v3, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->k:Z
if-eq v2, v3, :cond_1d
.line 627
const-string/jumbo v2, "server native changed to %b"
const/4 v3, 0x1
new-array v3, v3, [Ljava/lang/Object;
const/4 v4, 0x0
iget-boolean v5, p1, Lcom/tencent/bugly/crashreport/common/strategy/StrategyBean;->g:Z
invoke-static {v5}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object v5
aput-object v5, v3, v4
invoke-static {v2, v3}, Lcom/tencent/bugly/proguard/x;->d(Ljava/lang/String;[Ljava/lang/Object;)Z
.line 630
:cond_1d
invoke-static {}, Lcom/tencent/bugly/crashreport/common/strategy/a;->a()Lcom/tencent/bugly/crashreport/common/strategy/a;
move-result-object v2
invoke-virtual {v2}, Lcom/tencent/bugly/crashreport/common/strategy/a;->c()Lcom/tencent/bugly/crashreport/common/strategy/StrategyBean;
move-result-object v2
iget-boolean v2, v2, Lcom/tencent/bugly/crashreport/common/strategy/StrategyBean;->g:Z
if-eqz v2, :cond_45
iget-boolean v2, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->l:Z
if-eqz v2, :cond_45
.line 632
:goto_2d
iget-boolean v1, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->k:Z
if-eq v0, v1, :cond_43
.line 633
const-string v1, "native changed to %b"
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
invoke-static {v0}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object v4
aput-object v4, v2, v3
invoke-static {v1, v2}, Lcom/tencent/bugly/proguard/x;->a(Ljava/lang/String;[Ljava/lang/Object;)Z
.line 634
invoke-direct {p0, v0}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->b(Z)V
:try_end_43
.catchall {:try_start_5 .. :try_end_43} :catchall_47
.line 637
:cond_43
monitor-exit p0
return-void
:cond_45
move v0, v1
.line 630
goto :goto_2d
.line 626
:catchall_47
move-exception v0
monitor-exit p0
throw v0
.end method
.method public putKeyValueToNative(Ljava/lang/String;Ljava/lang/String;)Z
.registers 10
.prologue
const/4 v1, 0x0
.line 718
iget-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->i:Z
if-nez v0, :cond_b
iget-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->j:Z
if-nez v0, :cond_b
move v0, v1
.line 743
:goto_a
return v0
.line 721
:cond_b
sget-boolean v0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->m:Z
if-nez v0, :cond_11
move v0, v1
.line 722
goto :goto_a
.line 724
:cond_11
if-eqz p1, :cond_15
if-nez p2, :cond_17
:cond_15
move v0, v1
.line 725
goto :goto_a
.line 728
:cond_17
:try_start_17
iget-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->j:Z
if-eqz v0, :cond_20
.line 729
invoke-virtual {p0, p1, p2}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->putNativeKeyValue(Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
goto :goto_a
.line 731
:cond_20
const-string v0, "com.tencent.feedback.eup.jni.NativeExceptionUpload"
const-string/jumbo v2, "putNativeKeyValue"
const/4 v3, 0x0
const/4 v4, 0x2
new-array v4, v4, [Ljava/lang/Class;
const/4 v5, 0x0
const-class v6, Ljava/lang/String;
aput-object v6, v4, v5
const/4 v5, 0x1
const-class v6, Ljava/lang/String;
aput-object v6, v4, v5
const/4 v5, 0x2
new-array v5, v5, [Ljava/lang/Object;
const/4 v6, 0x0
aput-object p1, v5, v6
const/4 v6, 0x1
aput-object p2, v5, v6
invoke-static {v0, v2, v3, v4, v5}, Lcom/tencent/bugly/proguard/z;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Class;[Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/Boolean;
.line 734
if-eqz v0, :cond_49
invoke-virtual {v0}, Ljava/lang/Boolean;->booleanValue()Z
:try_end_47
.catch Ljava/lang/UnsatisfiedLinkError; {:try_start_17 .. :try_end_47} :catch_4b
.catch Ljava/lang/Throwable; {:try_start_17 .. :try_end_47} :catch_50
move-result v0
goto :goto_a
:cond_49
move v0, v1
goto :goto_a
.line 737
:catch_4b
move-exception v0
sput-boolean v1, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->m:Z
move v0, v1
.line 738
goto :goto_a
.line 739
:catch_50
move-exception v0
.line 740
invoke-static {v0}, Lcom/tencent/bugly/proguard/x;->a(Ljava/lang/Throwable;)Z
move-result v2
if-nez v2, :cond_5a
.line 741
invoke-virtual {v0}, Ljava/lang/Throwable;->printStackTrace()V
:cond_5a
move v0, v1
.line 743
goto :goto_a
.end method
.method protected native putNativeKeyValue(Ljava/lang/String;Ljava/lang/String;)Z
.end method
.method protected native regist(Ljava/lang/String;ZI)Ljava/lang/String;
.end method
.method public removeEmptyNativeRecordFiles()V
.registers 2
.prologue
.line 560
iget-object v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->g:Ljava/lang/String;
invoke-static {v0}, Lcom/tencent/bugly/crashreport/crash/jni/b;->c(Ljava/lang/String;)V
.line 561
return-void
.end method
.method protected native removeNativeKeyValue(Ljava/lang/String;)Ljava/lang/String;
.end method
.method public declared-synchronized setDumpFilePath(Ljava/lang/String;)V
.registers 3
.prologue
.line 179
monitor-enter p0
:try_start_1
iput-object p1, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->g:Ljava/lang/String;
:try_end_3
.catchall {:try_start_1 .. :try_end_3} :catchall_5
.line 180
monitor-exit p0
return-void
.line 179
:catchall_5
move-exception v0
monitor-exit p0
throw v0
.end method
.method public setNativeAppChannel(Ljava/lang/String;)Z
.registers 3
.prologue
.line 798
const/16 v0, 0xc
invoke-direct {p0, v0, p1}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->a(ILjava/lang/String;)Z
move-result v0
return v0
.end method
.method public setNativeAppPackage(Ljava/lang/String;)Z
.registers 3
.prologue
.line 808
const/16 v0, 0xd
invoke-direct {p0, v0, p1}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->a(ILjava/lang/String;)Z
move-result v0
return v0
.end method
.method public setNativeAppVersion(Ljava/lang/String;)Z
.registers 3
.prologue
.line 788
const/16 v0, 0xa
invoke-direct {p0, v0, p1}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->a(ILjava/lang/String;)Z
move-result v0
return v0
.end method
.method protected native setNativeInfo(ILjava/lang/String;)V
.end method
.method public setNativeIsAppForeground(Z)Z
.registers 4
.prologue
.line 828
if-eqz p1, :cond_c
const-string/jumbo v0, "true"
.line 829
:goto_5
const/16 v1, 0xe
invoke-direct {p0, v1, v0}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->a(ILjava/lang/String;)Z
move-result v0
return v0
.line 828
:cond_c
const-string v0, "false"
goto :goto_5
.end method
.method public setNativeLaunchTime(J)Z
.registers 6
.prologue
.line 840
const/16 v0, 0xf
:try_start_2
invoke-static {p1, p2}, Ljava/lang/String;->valueOf(J)Ljava/lang/String;
move-result-object v1
invoke-direct {p0, v0, v1}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->a(ILjava/lang/String;)Z
:try_end_9
.catch Ljava/lang/NumberFormatException; {:try_start_2 .. :try_end_9} :catch_b
move-result v0
.line 845
:goto_a
return v0
.line 841
:catch_b
move-exception v0
.line 842
invoke-static {v0}, Lcom/tencent/bugly/proguard/x;->a(Ljava/lang/Throwable;)Z
move-result v1
if-nez v1, :cond_15
.line 843
invoke-virtual {v0}, Ljava/lang/NumberFormatException;->printStackTrace()V
.line 845
:cond_15
const/4 v0, 0x0
goto :goto_a
.end method
.method public setNativeUserId(Ljava/lang/String;)Z
.registers 3
.prologue
.line 818
const/16 v0, 0xb
invoke-direct {p0, v0, p1}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->a(ILjava/lang/String;)Z
move-result v0
return v0
.end method
.method public declared-synchronized setUserOpened(Z)V
.registers 7
.prologue
const/4 v0, 0x1
const/4 v1, 0x0
.line 606
monitor-enter p0
:try_start_3
invoke-direct {p0, p1}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->c(Z)V
.line 608
invoke-virtual {p0}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->isUserOpened()Z
move-result v2
.line 609
invoke-static {}, Lcom/tencent/bugly/crashreport/common/strategy/a;->a()Lcom/tencent/bugly/crashreport/common/strategy/a;
move-result-object v3
.line 610
if-eqz v3, :cond_37
.line 611
if-eqz v2, :cond_32
invoke-virtual {v3}, Lcom/tencent/bugly/crashreport/common/strategy/a;->c()Lcom/tencent/bugly/crashreport/common/strategy/StrategyBean;
move-result-object v2
iget-boolean v2, v2, Lcom/tencent/bugly/crashreport/common/strategy/StrategyBean;->g:Z
if-eqz v2, :cond_32
.line 613
:goto_1a
iget-boolean v1, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->k:Z
if-eq v0, v1, :cond_30
.line 614
const-string v1, "native changed to %b"
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
invoke-static {v0}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object v4
aput-object v4, v2, v3
invoke-static {v1, v2}, Lcom/tencent/bugly/proguard/x;->a(Ljava/lang/String;[Ljava/lang/Object;)Z
.line 615
invoke-direct {p0, v0}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->b(Z)V
:try_end_30
.catchall {:try_start_3 .. :try_end_30} :catchall_34
.line 618
:cond_30
monitor-exit p0
return-void
:cond_32
move v0, v1
.line 611
goto :goto_1a
.line 606
:catchall_34
move-exception v0
monitor-exit p0
throw v0
:cond_37
move v0, v2
goto :goto_1a
.end method
.method public declared-synchronized startNativeMonitor()V
.registers 4
.prologue
.line 364
monitor-enter p0
:try_start_1
iget-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->j:Z
if-nez v0, :cond_9
iget-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->i:Z
if-eqz v0, :cond_10
.line 365
:cond_9
iget-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->h:Z
invoke-direct {p0, v0}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->a(Z)V
:try_end_e
.catchall {:try_start_1 .. :try_end_e} :catchall_6f
.line 402
:cond_e
:goto_e
monitor-exit p0
return-void
.line 369
:cond_10
:try_start_10
const-string v0, "Bugly"
.line 370
iget-object v1, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->d:Lcom/tencent/bugly/crashreport/common/info/a;
iget-object v1, v1, Lcom/tencent/bugly/crashreport/common/info/a;->n:Ljava/lang/String;
invoke-static {v1}, Lcom/tencent/bugly/proguard/z;->a(Ljava/lang/String;)Z
move-result v1
if-nez v1, :cond_72
const/4 v1, 0x1
move v2, v1
.line 372
:goto_1e
iget-object v1, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->d:Lcom/tencent/bugly/crashreport/common/info/a;
iget-object v1, v1, Lcom/tencent/bugly/crashreport/common/info/a;->n:Ljava/lang/String;
.line 381
if-nez v2, :cond_75
.line 383
iget-object v1, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->d:Lcom/tencent/bugly/crashreport/common/info/a;
invoke-virtual {v1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
.line 387
:goto_29
invoke-static {v0, v2}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->a(Ljava/lang/String;Z)Z
move-result v0
iput-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->j:Z
.line 389
iget-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->j:Z
if-nez v0, :cond_37
iget-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->i:Z
if-eqz v0, :cond_e
.line 393
:cond_37
iget-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->h:Z
invoke-direct {p0, v0}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->a(Z)V
.line 394
sget-boolean v0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->m:Z
if-eqz v0, :cond_e
.line 395
iget-object v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->d:Lcom/tencent/bugly/crashreport/common/info/a;
iget-object v0, v0, Lcom/tencent/bugly/crashreport/common/info/a;->k:Ljava/lang/String;
invoke-virtual {p0, v0}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->setNativeAppVersion(Ljava/lang/String;)Z
.line 396
iget-object v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->d:Lcom/tencent/bugly/crashreport/common/info/a;
iget-object v0, v0, Lcom/tencent/bugly/crashreport/common/info/a;->m:Ljava/lang/String;
invoke-virtual {p0, v0}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->setNativeAppChannel(Ljava/lang/String;)Z
.line 397
iget-object v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->d:Lcom/tencent/bugly/crashreport/common/info/a;
iget-object v0, v0, Lcom/tencent/bugly/crashreport/common/info/a;->c:Ljava/lang/String;
invoke-virtual {p0, v0}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->setNativeAppPackage(Ljava/lang/String;)Z
.line 398
iget-object v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->d:Lcom/tencent/bugly/crashreport/common/info/a;
invoke-virtual {v0}, Lcom/tencent/bugly/crashreport/common/info/a;->g()Ljava/lang/String;
move-result-object v0
invoke-virtual {p0, v0}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->setNativeUserId(Ljava/lang/String;)Z
.line 399
iget-object v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->d:Lcom/tencent/bugly/crashreport/common/info/a;
invoke-virtual {v0}, Lcom/tencent/bugly/crashreport/common/info/a;->a()Z
move-result v0
invoke-virtual {p0, v0}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->setNativeIsAppForeground(Z)Z
.line 400
iget-object v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->d:Lcom/tencent/bugly/crashreport/common/info/a;
iget-wide v0, v0, Lcom/tencent/bugly/crashreport/common/info/a;->a:J
invoke-virtual {p0, v0, v1}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->setNativeLaunchTime(J)Z
:try_end_6e
.catchall {:try_start_10 .. :try_end_6e} :catchall_6f
goto :goto_e
.line 364
:catchall_6f
move-exception v0
monitor-exit p0
throw v0
.line 370
:cond_72
const/4 v1, 0x0
move v2, v1
goto :goto_1e
:cond_75
move-object v0, v1
goto :goto_29
.end method
.method protected native testCrash()V
.end method
.method public testNativeCrash()V
.registers 3
.prologue
.line 499
iget-boolean v0, p0, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->j:Z
if-nez v0, :cond_d
.line 500
const-string v0, "[Native] Bugly SO file has not been load."
const/4 v1, 0x0
new-array v1, v1, [Ljava/lang/Object;
invoke-static {v0, v1}, Lcom/tencent/bugly/proguard/x;->d(Ljava/lang/String;[Ljava/lang/Object;)Z
.line 505
:goto_c
return-void
.line 504
:cond_d
invoke-virtual {p0}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->testCrash()V
goto :goto_c
.end method
.method public testNativeCrash(ZZZ)V
.registers 6
.prologue
.line 511
const/16 v0, 0x10
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {p0, v0, v1}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->a(ILjava/lang/String;)Z
.line 512
const/16 v0, 0x11
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {p0, v0, v1}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->a(ILjava/lang/String;)Z
.line 513
const/16 v0, 0x12
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v1, p3}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {p0, v0, v1}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->a(ILjava/lang/String;)Z
.line 514
invoke-virtual {p0}, Lcom/tencent/bugly/crashreport/crash/jni/NativeCrashHandler;->testNativeCrash()V
.line 515
return-void
.end method
.method protected native unregist()Ljava/lang/String;
.end method