c.smali
.class public final Lcom/singbox/component/d/c;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field private static a:Ljava/lang/String;
.field private static final b:[Ljava/lang/String;
.field private static c:Ljava/lang/String;
# direct methods
.method static constructor <clinit>()V
.registers 19
const-string v0, "0123456789ABCDEF"
const-string v1, "unknown"
const-string v2, "1234567890ABCDEF"
const-string v3, "F"
const-string v4, "0123456789"
const-string v5, "0123456789012345678901234567890"
const-string v6, "ZTEBV0820"
const-string v7, "LS5002"
const-string v8, "LenovoTAB2A8"
const-string v9, "itelit1512012345"
const-string v10, "0123456789SYMPHONY"
const-string v11, "0123456789AACDEF"
const-string v12, "0123456789INTEX"
const-string v13, "01234567"
const-string v14, "XD00000000"
const-string v15, "0123456DE7F7B150"
const-string v16, "123456789ABCDEFG"
const-string v17, "1234567890ABC"
const-string v18, "0000000000000000"
.line 29
filled-new-array/range {v0 .. v18}, [Ljava/lang/String;
move-result-object v0
sput-object v0, Lcom/singbox/component/d/c;->b:[Ljava/lang/String;
const/4 v0, 0x0
.line 116
sput-object v0, Lcom/singbox/component/d/c;->c:Ljava/lang/String;
return-void
.end method
.method public constructor <init>()V
.registers 1
.line 23
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static declared-synchronized a(Landroid/content/Context;)Ljava/lang/String;
.registers 10
const-class v0, Lcom/singbox/component/d/c;
monitor-enter v0
.line 44
:try_start_3
sget-object v1, Lcom/singbox/component/d/c;->a:Ljava/lang/String;
invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_17e
const-string v1, ""
.line 1067
new-instance v2, Ljava/io/File;
invoke-static {p0, v1}, Lcom/singbox/component/d/b;->a(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
invoke-direct {v2, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
invoke-static {v2}, Lsg/bigo/common/l;->a(Ljava/io/File;)Ljava/lang/String;
move-result-object v1
invoke-static {v1}, Lcom/singbox/component/d/b;->b(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
const-string v2, ""
.line 1088
new-instance v3, Ljava/io/File;
invoke-static {p0, v2}, Lcom/singbox/component/d/b;->b(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
invoke-direct {v3, v2}, Ljava/io/File;-><init>(Ljava/lang/String;)V
invoke-static {v3}, Lsg/bigo/common/l;->a(Ljava/io/File;)Ljava/lang/String;
move-result-object v2
invoke-static {v2}, Lcom/singbox/component/d/b;->b(Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
const-string v3, ""
.line 1103
invoke-static {p0, v3}, Lcom/singbox/component/d/b;->c(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;
move-result-object v3
.line 48
invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v4
if-nez v4, :cond_41
.line 49
sput-object v1, Lcom/singbox/component/d/c;->a:Ljava/lang/String;
goto/16 :goto_110
.line 50
:cond_41
invoke-static {v2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-nez v1, :cond_4b
.line 51
sput-object v2, Lcom/singbox/component/d/c;->a:Ljava/lang/String;
goto/16 :goto_110
.line 52
:cond_4b
invoke-static {v3}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-nez v1, :cond_55
.line 53
sput-object v3, Lcom/singbox/component/d/c;->a:Ljava/lang/String;
goto/16 :goto_110
.line 2067
:cond_55
invoke-static {p0}, Lcom/singbox/component/d/c;->b(Landroid/content/Context;)Ljava/lang/String;
move-result-object v1
const-string v2, ""
.line 2069
invoke-static {}, Lcom/singbox/component/d/d;->a()Ljava/lang/String;
move-result-object v3
.line 2070
sget-object v4, Landroid/os/Build;->MODEL:Ljava/lang/String;
.line 2071
invoke-static {}, Lcom/singbox/component/d/d;->b()Ljava/lang/String;
move-result-object v5
.line 2088
invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v6
const/4 v7, 0x1
const/4 v8, 0x0
if-nez v6, :cond_77
const-string v6, "9774d56d682e549c"
invoke-virtual {v6, v1}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v6
if-nez v6, :cond_77
const/4 v6, 0x1
goto :goto_78
:cond_77
const/4 v6, 0x0
:goto_78
if-nez v6, :cond_bd
.line 2095
invoke-static {v2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v6
if-nez v6, :cond_81
goto :goto_82
:cond_81
const/4 v7, 0x0
:goto_82
if-nez v7, :cond_bd
.line 2072
invoke-static {v3}, Lcom/singbox/component/d/c;->a(Ljava/lang/String;)Z
move-result v6
if-eqz v6, :cond_8b
goto :goto_bd
.line 2080
:cond_8b
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
invoke-static {}, Ljava/util/UUID;->randomUUID()Ljava/util/UUID;
move-result-object v2
invoke-virtual {v2}, Ljava/util/UUID;->toString()Ljava/lang/String;
move-result-object v2
const-string v3, "-"
const-string v5, ""
invoke-virtual {v2, v3, v5}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v2
invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v1}, Lsg/bigo/common/j;->a(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
goto :goto_f9
.line 2073
:cond_bd
:goto_bd
new-instance v6, Ljava/lang/StringBuilder;
invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, "_"
invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v6, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, "_"
invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v6, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, "_"
invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v6, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, "_"
invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v6, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, "_"
invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 2078
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v1
invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
.line 2073
invoke-static {v1}, Lsg/bigo/common/j;->a(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
.line 55
:goto_f9
sput-object v1, Lcom/singbox/component/d/c;->a:Ljava/lang/String;
const-string v1, "DeviceIDUtils"
.line 56
new-instance v2, Ljava/lang/StringBuilder;
const-string v3, "first generate v2 device id "
invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
sget-object v3, Lcom/singbox/component/d/c;->a:Ljava/lang/String;
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-static {v1, v2}, Lsg/bigo/log/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
.line 58
:goto_110
sget-object v1, Lcom/singbox/component/d/c;->a:Ljava/lang/String;
:try_end_112
.catchall {:try_start_3 .. :try_end_112} :catchall_182
:try_start_112
const-string v2, ""
.line 3118
new-instance v3, Ljava/io/File;
invoke-static {p0, v2}, Lcom/singbox/component/d/b;->a(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
invoke-direct {v3, v2}, Ljava/io/File;-><init>(Ljava/lang/String;)V
invoke-static {v1}, Lcom/singbox/component/d/b;->a(Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
invoke-static {v3, v2}, Lsg/bigo/common/l;->a(Ljava/io/File;Ljava/lang/String;)Z
const-string v2, ""
.line 3122
new-instance v3, Ljava/io/File;
invoke-static {p0, v2}, Lcom/singbox/component/d/b;->b(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
invoke-direct {v3, v2}, Ljava/io/File;-><init>(Ljava/lang/String;)V
invoke-static {v1}, Lcom/singbox/component/d/b;->a(Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
invoke-static {v3, v2}, Lsg/bigo/common/l;->a(Ljava/io/File;Ljava/lang/String;)Z
const-string v2, ""
const-string v3, "android.permission.WRITE_SETTINGS"
.line 4048
invoke-static {}, Lsg/bigo/common/a;->d()Landroid/content/Context;
move-result-object v4
invoke-static {v4, v3}, Lcom/singbox/util/b/d;->a(Landroid/content/Context;Ljava/lang/String;)Z
move-result v3
:try_end_142
.catch Ljava/lang/Exception; {:try_start_112 .. :try_end_142} :catch_162
.catchall {:try_start_112 .. :try_end_142} :catchall_182
if-eqz v3, :cond_169
.line 3128
:try_start_144
invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object p0
invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object p0
const-string v3, "SingBoxDeviceID"
invoke-virtual {v3, v2}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
invoke-static {v1}, Lcom/singbox/component/d/b;->a(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
invoke-static {p0, v2, v1}, Landroid/provider/Settings$System;->putString(Landroid/content/ContentResolver;Ljava/lang/String;Ljava/lang/String;)Z
:try_end_159
.catch Ljava/lang/Exception; {:try_start_144 .. :try_end_159} :catch_15a
.catchall {:try_start_144 .. :try_end_159} :catchall_182
goto :goto_169
:catch_15a
:try_start_15a
const-string p0, "DeviceIDStorageUtils"
const-string v1, "Save device id in setting failed"
.line 3131
invoke-static {p0, v1}, Lsg/bigo/log/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
:try_end_161
.catch Ljava/lang/Exception; {:try_start_15a .. :try_end_161} :catch_162
.catchall {:try_start_15a .. :try_end_161} :catchall_182
goto :goto_169
:catch_162
:try_start_162
const-string p0, "DeviceIDStorageUtils"
const-string v1, "Save failed"
.line 2145
invoke-static {p0, v1}, Lsg/bigo/log/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
:cond_169
:goto_169
const-string p0, "DeviceIDUtils"
.line 59
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "latest device id "
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
sget-object v2, Lcom/singbox/component/d/c;->a:Ljava/lang/String;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {p0, v1}, Lsg/bigo/log/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
.line 61
:cond_17e
sget-object p0, Lcom/singbox/component/d/c;->a:Ljava/lang/String;
:try_end_180
.catchall {:try_start_162 .. :try_end_180} :catchall_182
monitor-exit v0
return-object p0
:catchall_182
move-exception p0
monitor-exit v0
throw p0
.end method
.method private static a(Ljava/lang/String;)Z
.registers 6
.line 102
invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
const/4 v1, 0x0
if-eqz v0, :cond_8
return v1
.line 106
:cond_8
sget-object v0, Lcom/singbox/component/d/c;->b:[Ljava/lang/String;
array-length v2, v0
const/4 v3, 0x0
:goto_c
if-ge v3, v2, :cond_1a
aget-object v4, v0, v3
.line 107
invoke-virtual {p0, v4}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v4
if-eqz v4, :cond_17
goto :goto_1b
:cond_17
add-int/lit8 v3, v3, 0x1
goto :goto_c
:cond_1a
const/4 v1, 0x1
:goto_1b
return v1
.end method
.method public static b(Landroid/content/Context;)Ljava/lang/String;
.registers 2
.line 122
:try_start_0
sget-object v0, Lcom/singbox/component/d/c;->c:Ljava/lang/String;
if-nez v0, :cond_15
.line 123
invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object p0
const-string v0, "android_id"
invoke-static {p0, v0}, Landroid/provider/Settings$Secure;->getString(Landroid/content/ContentResolver;Ljava/lang/String;)Ljava/lang/String;
:try_end_d
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_d} :catch_e
goto :goto_15
:catch_e
const-string p0, "DeviceIDUtils"
const-string v0, "Get android id with exception"
.line 126
invoke-static {p0, v0}, Lsg/bigo/log/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 128
:cond_15
:goto_15
sget-object p0, Lcom/singbox/component/d/c;->c:Ljava/lang/String;
return-object p0
.end method