d.smali
.class public final Lsg/bigo/b/b/d;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field private static final a:Ljava/text/SimpleDateFormat;
.field private static final b:Ljava/text/SimpleDateFormat;
# direct methods
.method static constructor <clinit>()V
.registers 3
.line 35
new-instance v0, Ljava/text/SimpleDateFormat;
sget-object v1, Ljava/util/Locale;->ENGLISH:Ljava/util/Locale;
const-string v2, "yyMMdd_HHmmss"
invoke-direct {v0, v2, v1}, Ljava/text/SimpleDateFormat;-><init>(Ljava/lang/String;Ljava/util/Locale;)V
sput-object v0, Lsg/bigo/b/b/d;->a:Ljava/text/SimpleDateFormat;
.line 36
new-instance v0, Ljava/text/SimpleDateFormat;
sget-object v1, Ljava/util/Locale;->ENGLISH:Ljava/util/Locale;
const-string v2, "HHmmss"
invoke-direct {v0, v2, v1}, Ljava/text/SimpleDateFormat;-><init>(Ljava/lang/String;Ljava/util/Locale;)V
sput-object v0, Lsg/bigo/b/b/d;->b:Ljava/text/SimpleDateFormat;
return-void
.end method
.method public constructor <init>()V
.registers 1
.line 31
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method private static a()Ljava/lang/String;
.registers 5
.line 101
:try_start_0
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
const-string v1, "logcat"
.line 102
invoke-interface {v0, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
const-string v1, "-t"
.line 103
invoke-interface {v0, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
const/16 v1, 0xfa
.line 104
invoke-static {v1}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
move-result-object v2
invoke-interface {v0, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z
const-string v2, "-v"
.line 105
invoke-interface {v0, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z
const-string v2, "time"
.line 106
invoke-interface {v0, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z
.line 108
new-instance v2, Lsg/bigo/a/a/d;
invoke-direct {v2, v1}, Lsg/bigo/a/a/d;-><init>(I)V
.line 109
invoke-static {}, Ljava/lang/Runtime;->getRuntime()Ljava/lang/Runtime;
move-result-object v1
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v3
new-array v3, v3, [Ljava/lang/String;
invoke-interface {v0, v3}, Ljava/util/List;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;
move-result-object v0
check-cast v0, [Ljava/lang/String;
invoke-virtual {v1, v0}, Ljava/lang/Runtime;->exec([Ljava/lang/String;)Ljava/lang/Process;
move-result-object v0
.line 110
new-instance v1, Ljava/io/BufferedReader;
new-instance v3, Ljava/io/InputStreamReader;
invoke-virtual {v0}, Ljava/lang/Process;->getInputStream()Ljava/io/InputStream;
move-result-object v4
invoke-direct {v3, v4}, Ljava/io/InputStreamReader;-><init>(Ljava/io/InputStream;)V
const/16 v4, 0x2000
invoke-direct {v1, v3, v4}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;I)V
.line 1133
new-instance v3, Ljava/lang/Thread;
new-instance v4, Lsg/bigo/b/b/d$1;
invoke-direct {v4, v0}, Lsg/bigo/b/b/d$1;-><init>(Ljava/lang/Process;)V
invoke-direct {v3, v4}, Ljava/lang/Thread;-><init>(Ljava/lang/Runnable;)V
.line 1146
invoke-virtual {v3}, Ljava/lang/Thread;->start()V
.line 1148
new-instance v3, Ljava/lang/Thread;
new-instance v4, Lsg/bigo/b/b/d$2;
invoke-direct {v4, v0}, Lsg/bigo/b/b/d$2;-><init>(Ljava/lang/Process;)V
invoke-direct {v3, v4}, Ljava/lang/Thread;-><init>(Ljava/lang/Runnable;)V
.line 1158
invoke-virtual {v3}, Ljava/lang/Thread;->start()V
.line 115
:goto_65
invoke-virtual {v1}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String;
move-result-object v0
if-eqz v0, :cond_80
.line 120
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, "\n"
invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-virtual {v2, v0}, Ljava/util/LinkedList;->add(Ljava/lang/Object;)Z
goto :goto_65
.line 122
:cond_80
invoke-virtual {v1}, Ljava/io/BufferedReader;->close()V
.line 124
invoke-virtual {v2}, Ljava/util/LinkedList;->toString()Ljava/lang/String;
move-result-object v0
:try_end_87
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_87} :catch_88
return-object v0
:catch_88
const-string v0, ""
return-object v0
.end method
.method public static a(Ljava/lang/String;J)Ljava/lang/String;
.registers 8
.line 43
new-instance v0, Ljava/text/SimpleDateFormat;
sget-object v1, Ljava/util/Locale;->ENGLISH:Ljava/util/Locale;
const-string v2, "yyMMdd_HHmmss"
invoke-direct {v0, v2, v1}, Ljava/text/SimpleDateFormat;-><init>(Ljava/lang/String;Ljava/util/Locale;)V
new-instance v1, Ljava/util/Date;
invoke-direct {v1}, Ljava/util/Date;-><init>()V
invoke-virtual {v0, v1}, Ljava/text/SimpleDateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
move-result-object v0
.line 44
invoke-static {}, Lsg/bigo/common/r;->a()Ljava/lang/String;
move-result-object v1
.line 46
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "java_"
.line 47
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 48
invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p0, "_"
invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
if-eqz v1, :cond_35
const-string v3, "ver"
.line 50
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
:cond_35
const-string v1, "uid"
.line 52
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-wide v3, 0xffffffffL
and-long/2addr p1, v3
invoke-virtual {v2, p1, p2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 53
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p0, ".txt"
invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 55
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method public static a(Ljava/io/File;Ljava/lang/Throwable;Ljava/lang/String;)V
.registers 6
const/4 v0, 0x0
.line 61
:try_start_1
new-instance v1, Ljava/io/PrintStream;
new-instance v2, Ljava/io/FileOutputStream;
invoke-direct {v2, p0}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;)V
invoke-direct {v1, v2}, Ljava/io/PrintStream;-><init>(Ljava/io/OutputStream;)V
:try_end_b
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_b} :catch_c9
.catchall {:try_start_1 .. :try_end_b} :catchall_c7
.line 62
:try_start_b
new-instance p0, Ljava/lang/StringBuilder;
const-string v0, "APP_VERSION_CODE="
invoke-direct {p0, v0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-static {}, Lsg/bigo/common/r;->b()I
move-result v0
invoke-virtual {p0, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-virtual {v1, p0}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
.line 63
new-instance p0, Ljava/lang/StringBuilder;
const-string v0, "APP_VERSION_NAME="
invoke-direct {p0, v0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-static {}, Lsg/bigo/common/r;->a()Ljava/lang/String;
move-result-object v0
invoke-virtual {p0, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-virtual {v1, p0}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
.line 64
new-instance p0, Ljava/lang/StringBuilder;
const-string v0, "NETWORK_TYPE="
invoke-direct {p0, v0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-static {}, Lsg/bigo/common/p;->i()I
move-result v0
invoke-virtual {p0, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-virtual {v1, p0}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
.line 65
new-instance p0, Ljava/lang/StringBuilder;
const-string v0, "PHONE_MODEL="
invoke-direct {p0, v0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
sget-object v0, Landroid/os/Build;->MODEL:Ljava/lang/String;
invoke-virtual {p0, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-virtual {v1, p0}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
.line 66
new-instance p0, Ljava/lang/StringBuilder;
const-string v0, "ANDROID_VERSION="
invoke-direct {p0, v0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
invoke-virtual {p0, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-virtual {v1, p0}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
.line 68
new-instance p0, Ljava/lang/StringBuilder;
const-string v0, "THREAD_NAME="
invoke-direct {p0, v0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/Thread;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p0, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-virtual {v1, p0}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
const-string p0, "STACK_TRACE="
.line 69
invoke-virtual {v1, p0}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
if-eqz p1, :cond_93
.line 71
invoke-virtual {p1, v1}, Ljava/lang/Throwable;->printStackTrace(Ljava/io/PrintStream;)V
:cond_93
const-string p0, "Extra="
.line 73
invoke-virtual {v1, p0}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
.line 74
invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result p0
if-nez p0, :cond_a1
.line 75
invoke-virtual {v1, p2}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
.line 77
:cond_a1
invoke-virtual {v1}, Ljava/io/PrintStream;->println()V
const-string p0, "LOGCAT="
.line 78
invoke-virtual {v1, p0}, Ljava/io/PrintStream;->print(Ljava/lang/String;)V
.line 79
invoke-static {}, Lsg/bigo/b/b/d;->a()Ljava/lang/String;
move-result-object p0
invoke-virtual {v1, p0}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
.line 80
invoke-virtual {v1}, Ljava/io/PrintStream;->println()V
.line 81
invoke-static {}, Lsg/bigo/common/r;->f()Ljava/lang/String;
move-result-object p0
invoke-virtual {v1, p0}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V
.line 82
invoke-virtual {v1}, Ljava/io/PrintStream;->flush()V
:try_end_bd
.catch Ljava/lang/Exception; {:try_start_b .. :try_end_bd} :catch_c4
.catchall {:try_start_b .. :try_end_bd} :catchall_c1
.line 89
:try_start_bd
invoke-virtual {v1}, Ljava/io/PrintStream;->close()V
:try_end_c0
.catch Ljava/lang/Exception; {:try_start_bd .. :try_end_c0} :catch_c0
:catch_c0
return-void
:catchall_c1
move-exception p0
move-object v0, v1
goto :goto_d7
:catch_c4
move-exception p0
move-object v0, v1
goto :goto_ca
:catchall_c7
move-exception p0
goto :goto_d7
:catch_c9
move-exception p0
:goto_ca
:try_start_ca
const-string p1, "ReportFileUtils"
const-string p2, "fail to save crash log"
.line 85
invoke-static {p1, p2, p0}, Lsg/bigo/log/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
:try_end_d1
.catchall {:try_start_ca .. :try_end_d1} :catchall_c7
if-eqz v0, :cond_d6
.line 89
:try_start_d3
invoke-virtual {v0}, Ljava/io/PrintStream;->close()V
:try_end_d6
.catch Ljava/lang/Exception; {:try_start_d3 .. :try_end_d6} :catch_d6
:catch_d6
:cond_d6
return-void
:goto_d7
if-eqz v0, :cond_dc
:try_start_d9
invoke-virtual {v0}, Ljava/io/PrintStream;->close()V
:try_end_dc
.catch Ljava/lang/Exception; {:try_start_d9 .. :try_end_dc} :catch_dc
.line 91
:catch_dc
:cond_dc
throw p0
.end method