DeviceConfigEx.smali
.class public Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;
.super Ljava/lang/Object;
.source "DeviceConfigEx.java"
# static fields
.field public static final DEFAULT_TIMEZONE:I = 0x8
.field private static final KEY_EMUI_VERSION_CODE:Ljava/lang/String; = "ro.build.hw_emui_api_level"
.field private static final KEY_MIUI_VERSION_NAME:Ljava/lang/String; = "ro.miui.ui.version.name"
.field protected static final LOG_TAG:Ljava/lang/String;
.field public static final MOBILE_NETWORK:Ljava/lang/String; = "2G/3G"
.field public static final UNKNOW:Ljava/lang/String; = ""
.field public static final WIFI:Ljava/lang/String; = "Wi-Fi"
# direct methods
.method static constructor <clinit>()V
.registers 1
.prologue
.line 72
const-class v0, Lcom/umeng/commonsdk/statistics/common/DeviceConfig;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
sput-object v0, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->LOG_TAG:Ljava/lang/String;
return-void
.end method
.method public constructor <init>()V
.registers 1
.prologue
.line 71
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method private static byte2HexFormatted([B)Ljava/lang/String;
.registers 7
.prologue
.line 1055
new-instance v2, Ljava/lang/StringBuilder;
array-length v0, p0
mul-int/lit8 v0, v0, 0x2
invoke-direct {v2, v0}, Ljava/lang/StringBuilder;-><init>(I)V
.line 1056
const/4 v0, 0x0
:goto_9
array-length v1, p0
if-ge v0, v1, :cond_4d
.line 1057
aget-byte v1, p0, v0
invoke-static {v1}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;
move-result-object v1
.line 1058
invoke-virtual {v1}, Ljava/lang/String;->length()I
move-result v3
.line 1059
const/4 v4, 0x1
if-ne v3, v4, :cond_2c
.line 1060
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "0"
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
.line 1061
:cond_2c
const/4 v4, 0x2
if-le v3, v4, :cond_35
.line 1062
add-int/lit8 v4, v3, -0x2
invoke-virtual {v1, v4, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object v1
.line 1063
:cond_35
invoke-static {}, Ljava/util/Locale;->getDefault()Ljava/util/Locale;
move-result-object v3
invoke-virtual {v1, v3}, Ljava/lang/String;->toUpperCase(Ljava/util/Locale;)Ljava/lang/String;
move-result-object v1
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 1064
array-length v1, p0
add-int/lit8 v1, v1, -0x1
if-ge v0, v1, :cond_4a
.line 1065
const/16 v1, 0x3a
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
.line 1056
:cond_4a
add-int/lit8 v0, v0, 0x1
goto :goto_9
.line 1067
:cond_4d
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public static checkPermission(Landroid/content/Context;Ljava/lang/String;)Z
.registers 9
.prologue
const/4 v1, 0x1
const/4 v2, 0x0
.line 201
.line 202
if-nez p0, :cond_5
.line 224
:cond_4
:goto_4
return v2
.line 205
:cond_5
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v3, 0x17
if-lt v0, v3, :cond_36
.line 207
:try_start_b
const-string v0, "android.content.Context"
invoke-static {v0}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v0
.line 208
const-string v3, "checkSelfPermission"
const/4 v4, 0x1
new-array v4, v4, [Ljava/lang/Class;
const/4 v5, 0x0
const-class v6, Ljava/lang/String;
aput-object v6, v4, v5
invoke-virtual {v0, v3, v4}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
move-result-object v0
.line 209
const/4 v3, 0x1
new-array v3, v3, [Ljava/lang/Object;
const/4 v4, 0x0
aput-object p1, v3, v4
invoke-virtual {v0, p0, v3}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/Integer;
invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
:try_end_2e
.catch Ljava/lang/Throwable; {:try_start_b .. :try_end_2e} :catch_46
move-result v0
.line 210
if-nez v0, :cond_34
move v0, v1
:goto_32
move v2, v0
.line 217
goto :goto_4
:cond_34
move v0, v2
.line 213
goto :goto_32
.line 219
:cond_36
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v0
.line 220
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v3
invoke-virtual {v0, p1, v3}, Landroid/content/pm/PackageManager;->checkPermission(Ljava/lang/String;Ljava/lang/String;)I
move-result v0
if-nez v0, :cond_4
move v2, v1
.line 221
goto :goto_4
.line 215
:catch_46
move-exception v0
goto :goto_4
.end method
.method public static getAndroidId(Landroid/content/Context;)Ljava/lang/String;
.registers 4
.prologue
.line 131
const/4 v0, 0x0
.line 132
const-string v1, "header_tracking_android_id"
invoke-static {v1}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_15
.line 133
if-eqz p0, :cond_15
.line 135
:try_start_b
invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v1
const-string v2, "android_id"
invoke-static {v1, v2}, Landroid/provider/Settings$Secure;->getString(Landroid/content/ContentResolver;Ljava/lang/String;)Ljava/lang/String;
:try_end_14
.catch Ljava/lang/Exception; {:try_start_b .. :try_end_14} :catch_16
move-result-object v0
.line 144
:cond_15
:goto_15
return-object v0
.line 136
:catch_16
move-exception v1
.line 137
sget-boolean v1, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v1, :cond_15
.line 139
const-string v1, "can\'t read android id"
invoke-static {v1}, Lcom/umeng/commonsdk/statistics/common/MLog;->w(Ljava/lang/String;)V
goto :goto_15
.end method
.method public static getAppHashKey(Landroid/content/Context;)Ljava/lang/String;
.registers 5
.prologue
const/4 v3, 0x0
.line 1012
:try_start_1
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v0
.line 1013
const/16 v1, 0x40
.line 1014
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getPackageName(Landroid/content/Context;)Ljava/lang/String;
move-result-object v2
invoke-virtual {v0, v2, v1}, Landroid/content/pm/PackageManager;->getPackageInfo(Ljava/lang/String;I)Landroid/content/pm/PackageInfo;
move-result-object v0
.line 1015
iget-object v0, v0, Landroid/content/pm/PackageInfo;->signatures:[Landroid/content/pm/Signature;
array-length v1, v0
const/4 v2, 0x0
if-ge v3, v1, :cond_33
aget-object v0, v0, v2
.line 1016
const-string v1, "SHA"
invoke-static {v1}, Ljava/security/MessageDigest;->getInstance(Ljava/lang/String;)Ljava/security/MessageDigest;
move-result-object v1
.line 1017
invoke-virtual {v0}, Landroid/content/pm/Signature;->toByteArray()[B
move-result-object v0
invoke-virtual {v1, v0}, Ljava/security/MessageDigest;->update([B)V
.line 1018
invoke-virtual {v1}, Ljava/security/MessageDigest;->digest()[B
move-result-object v0
const/4 v1, 0x0
invoke-static {v0, v1}, Landroid/util/Base64;->encodeToString([BI)Ljava/lang/String;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/String;->trim()Ljava/lang/String;
:try_end_30
.catch Ljava/lang/Throwable; {:try_start_1 .. :try_end_30} :catch_32
move-result-object v0
.line 1022
:goto_31
return-object v0
.line 1020
:catch_32
move-exception v0
.line 1022
:cond_33
const/4 v0, 0x0
goto :goto_31
.end method
.method public static getAppMD5Signature(Landroid/content/Context;)Ljava/lang/String;
.registers 5
.prologue
.line 1032
const/4 v1, 0x0
.line 1033
if-nez p0, :cond_4
.line 1051
:goto_3
return-object v1
.line 1037
:cond_4
:try_start_4
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v0
.line 1038
const/16 v2, 0x40
.line 1039
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getPackageName(Landroid/content/Context;)Ljava/lang/String;
move-result-object v3
invoke-virtual {v0, v3, v2}, Landroid/content/pm/PackageManager;->getPackageInfo(Ljava/lang/String;I)Landroid/content/pm/PackageInfo;
move-result-object v0
.line 1040
iget-object v0, v0, Landroid/content/pm/PackageInfo;->signatures:[Landroid/content/pm/Signature;
.line 1041
const/4 v2, 0x0
aget-object v0, v0, v2
invoke-virtual {v0}, Landroid/content/pm/Signature;->toByteArray()[B
move-result-object v0
.line 1042
new-instance v2, Ljava/io/ByteArrayInputStream;
invoke-direct {v2, v0}, Ljava/io/ByteArrayInputStream;-><init>([B)V
.line 1043
const-string v0, "X509"
invoke-static {v0}, Ljava/security/cert/CertificateFactory;->getInstance(Ljava/lang/String;)Ljava/security/cert/CertificateFactory;
move-result-object v0
.line 1044
invoke-virtual {v0, v2}, Ljava/security/cert/CertificateFactory;->generateCertificate(Ljava/io/InputStream;)Ljava/security/cert/Certificate;
move-result-object v0
check-cast v0, Ljava/security/cert/X509Certificate;
.line 1046
const-string v2, "MD5"
invoke-static {v2}, Ljava/security/MessageDigest;->getInstance(Ljava/lang/String;)Ljava/security/MessageDigest;
move-result-object v2
.line 1047
invoke-virtual {v0}, Ljava/security/cert/X509Certificate;->getEncoded()[B
move-result-object v0
invoke-virtual {v2, v0}, Ljava/security/MessageDigest;->digest([B)[B
move-result-object v0
.line 1048
invoke-static {v0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->byte2HexFormatted([B)Ljava/lang/String;
:try_end_3d
.catch Ljava/lang/Throwable; {:try_start_4 .. :try_end_3d} :catch_40
move-result-object v0
:goto_3e
move-object v1, v0
.line 1051
goto :goto_3
.line 1049
:catch_40
move-exception v0
move-object v0, v1
goto :goto_3e
.end method
.method public static getAppName(Landroid/content/Context;)Ljava/lang/String;
.registers 5
.prologue
.line 1089
const/4 v0, 0x0
.line 1090
if-nez p0, :cond_4
.line 1100
:cond_3
:goto_3
return-object v0
.line 1094
:cond_4
:try_start_4
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v1
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v2
const/4 v3, 0x0
invoke-virtual {v1, v2, v3}, Landroid/content/pm/PackageManager;->getPackageInfo(Ljava/lang/String;I)Landroid/content/pm/PackageInfo;
move-result-object v1
.line 1095
iget-object v1, v1, Landroid/content/pm/PackageInfo;->applicationInfo:Landroid/content/pm/ApplicationInfo;
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v2
invoke-virtual {v1, v2}, Landroid/content/pm/ApplicationInfo;->loadLabel(Landroid/content/pm/PackageManager;)Ljava/lang/CharSequence;
move-result-object v1
invoke-interface {v1}, Ljava/lang/CharSequence;->toString()Ljava/lang/String;
:try_end_1e
.catch Ljava/lang/Throwable; {:try_start_4 .. :try_end_1e} :catch_20
move-result-object v0
goto :goto_3
.line 1096
:catch_20
move-exception v1
.line 1097
sget-boolean v2, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v2, :cond_3
.line 1098
sget-object v2, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->LOG_TAG:Ljava/lang/String;
invoke-static {v2, v1}, Lcom/umeng/commonsdk/statistics/common/MLog;->i(Ljava/lang/String;Ljava/lang/Throwable;)V
goto :goto_3
.end method
.method public static getAppSHA1Key(Landroid/content/Context;)Ljava/lang/String;
.registers 5
.prologue
.line 987
.line 988
const/4 v1, 0x0
.line 990
:try_start_1
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v0
.line 991
const/16 v2, 0x40
.line 992
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getPackageName(Landroid/content/Context;)Ljava/lang/String;
move-result-object v3
invoke-virtual {v0, v3, v2}, Landroid/content/pm/PackageManager;->getPackageInfo(Ljava/lang/String;I)Landroid/content/pm/PackageInfo;
move-result-object v0
.line 993
iget-object v0, v0, Landroid/content/pm/PackageInfo;->signatures:[Landroid/content/pm/Signature;
.line 994
const/4 v2, 0x0
aget-object v0, v0, v2
invoke-virtual {v0}, Landroid/content/pm/Signature;->toByteArray()[B
move-result-object v0
.line 996
new-instance v2, Ljava/io/ByteArrayInputStream;
invoke-direct {v2, v0}, Ljava/io/ByteArrayInputStream;-><init>([B)V
.line 998
const-string v0, "X509"
invoke-static {v0}, Ljava/security/cert/CertificateFactory;->getInstance(Ljava/lang/String;)Ljava/security/cert/CertificateFactory;
move-result-object v0
.line 999
invoke-virtual {v0, v2}, Ljava/security/cert/CertificateFactory;->generateCertificate(Ljava/io/InputStream;)Ljava/security/cert/Certificate;
move-result-object v0
check-cast v0, Ljava/security/cert/X509Certificate;
.line 1001
const-string v2, "SHA1"
invoke-static {v2}, Ljava/security/MessageDigest;->getInstance(Ljava/lang/String;)Ljava/security/MessageDigest;
move-result-object v2
.line 1002
invoke-virtual {v0}, Ljava/security/cert/X509Certificate;->getEncoded()[B
move-result-object v0
invoke-virtual {v2, v0}, Ljava/security/MessageDigest;->digest([B)[B
move-result-object v0
.line 1003
invoke-static {v0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->byte2HexFormatted([B)Ljava/lang/String;
:try_end_3a
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_3a} :catch_3c
move-result-object v0
.line 1007
:goto_3b
return-object v0
.line 1004
:catch_3c
move-exception v0
move-object v0, v1
goto :goto_3b
.end method
.method public static getAppVersionCode(Landroid/content/Context;)Ljava/lang/String;
.registers 2
.prologue
.line 177
invoke-static {p0}, Lcom/umeng/commonsdk/utils/UMUtils;->getAppVersionCode(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public static getAppVersionName(Landroid/content/Context;)Ljava/lang/String;
.registers 2
.prologue
.line 189
invoke-static {p0}, Lcom/umeng/commonsdk/utils/UMUtils;->getAppVersionName(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public static getApplicationLable(Landroid/content/Context;)Ljava/lang/String;
.registers 3
.prologue
.line 1077
if-nez p0, :cond_5
.line 1078
const-string v0, ""
.line 1080
:goto_4
return-object v0
:cond_5
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v0
invoke-virtual {p0}, Landroid/content/Context;->getApplicationInfo()Landroid/content/pm/ApplicationInfo;
move-result-object v1
invoke-virtual {v0, v1}, Landroid/content/pm/PackageManager;->getApplicationLabel(Landroid/content/pm/ApplicationInfo;)Ljava/lang/CharSequence;
move-result-object v0
invoke-interface {v0}, Ljava/lang/CharSequence;->toString()Ljava/lang/String;
move-result-object v0
goto :goto_4
.end method
.method private static getBuildProp()Ljava/util/Properties;
.registers 7
.prologue
.line 1540
new-instance v2, Ljava/util/Properties;
invoke-direct {v2}, Ljava/util/Properties;-><init>()V
.line 1541
const/4 v1, 0x0
.line 1543
:try_start_6
new-instance v0, Ljava/io/FileInputStream;
new-instance v3, Ljava/io/File;
invoke-static {}, Landroid/os/Environment;->getRootDirectory()Ljava/io/File;
move-result-object v4
const-string v5, "build.prop"
invoke-direct {v3, v4, v5}, Ljava/io/File;-><init>(Ljava/io/File;Ljava/lang/String;)V
invoke-direct {v0, v3}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V
:try_end_16
.catch Ljava/lang/Throwable; {:try_start_6 .. :try_end_16} :catch_1f
.catchall {:try_start_6 .. :try_end_16} :catchall_29
.line 1544
:try_start_16
invoke-virtual {v2, v0}, Ljava/util/Properties;->load(Ljava/io/InputStream;)V
:try_end_19
.catch Ljava/lang/Throwable; {:try_start_16 .. :try_end_19} :catch_39
.catchall {:try_start_16 .. :try_end_19} :catchall_34
.line 1548
if-eqz v0, :cond_1e
.line 1550
:try_start_1b
invoke-virtual {v0}, Ljava/io/FileInputStream;->close()V
:try_end_1e
.catch Ljava/lang/Throwable; {:try_start_1b .. :try_end_1e} :catch_30
.line 1555
:cond_1e
:goto_1e
return-object v2
.line 1545
:catch_1f
move-exception v0
move-object v0, v1
.line 1548
:goto_21
if-eqz v0, :cond_1e
.line 1550
:try_start_23
invoke-virtual {v0}, Ljava/io/FileInputStream;->close()V
:try_end_26
.catch Ljava/lang/Throwable; {:try_start_23 .. :try_end_26} :catch_27
goto :goto_1e
.line 1551
:catch_27
move-exception v0
goto :goto_1e
.line 1548
:catchall_29
move-exception v0
:goto_2a
if-eqz v1, :cond_2f
.line 1550
:try_start_2c
invoke-virtual {v1}, Ljava/io/FileInputStream;->close()V
:try_end_2f
.catch Ljava/lang/Throwable; {:try_start_2c .. :try_end_2f} :catch_32
.line 1552
:cond_2f
:goto_2f
throw v0
.line 1551
:catch_30
move-exception v0
goto :goto_1e
:catch_32
move-exception v1
goto :goto_2f
.line 1548
:catchall_34
move-exception v1
move-object v6, v1
move-object v1, v0
move-object v0, v6
goto :goto_2a
.line 1545
:catch_39
move-exception v1
goto :goto_21
.end method
.method public static getCPU()Ljava/lang/String;
.registers 5
.prologue
.line 351
const-string v0, "header_cpu"
invoke-static {v0}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_4c
.line 352
const/4 v0, 0x0
.line 358
:try_start_9
new-instance v1, Ljava/io/FileReader;
const-string v2, "/proc/cpuinfo"
invoke-direct {v1, v2}, Ljava/io/FileReader;-><init>(Ljava/lang/String;)V
:try_end_10
.catch Ljava/io/FileNotFoundException; {:try_start_9 .. :try_end_10} :catch_4f
.line 359
if-eqz v1, :cond_23
.line 361
:try_start_12
new-instance v2, Ljava/io/BufferedReader;
const/16 v3, 0x400
invoke-direct {v2, v1, v3}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;I)V
.line 362
invoke-virtual {v2}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String;
:try_end_1c
.catch Ljava/lang/Throwable; {:try_start_12 .. :try_end_1c} :catch_36
.catch Ljava/io/FileNotFoundException; {:try_start_12 .. :try_end_1c} :catch_4f
move-result-object v0
.line 363
:try_start_1d
invoke-virtual {v2}, Ljava/io/BufferedReader;->close()V
.line 364
invoke-virtual {v1}, Ljava/io/FileReader;->close()V
:try_end_23
.catch Ljava/lang/Throwable; {:try_start_1d .. :try_end_23} :catch_36
.catch Ljava/io/FileNotFoundException; {:try_start_1d .. :try_end_23} :catch_3f
.line 373
:cond_23
:goto_23
if-eqz v0, :cond_4c
.line 374
const/16 v1, 0x3a
invoke-virtual {v0, v1}, Ljava/lang/String;->indexOf(I)I
move-result v1
add-int/lit8 v1, v1, 0x1
.line 375
invoke-virtual {v0, v1}, Ljava/lang/String;->substring(I)Ljava/lang/String;
move-result-object v0
.line 376
invoke-virtual {v0}, Ljava/lang/String;->trim()Ljava/lang/String;
move-result-object v0
.line 379
:goto_35
return-object v0
.line 365
:catch_36
move-exception v1
.line 366
:try_start_37
sget-object v2, Lcom/umeng/commonsdk/statistics/common/DeviceConfig;->LOG_TAG:Ljava/lang/String;
const-string v3, "Could not read from file /proc/cpuinfo"
invoke-static {v2, v3, v1}, Lcom/umeng/commonsdk/statistics/common/MLog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
:try_end_3e
.catch Ljava/io/FileNotFoundException; {:try_start_37 .. :try_end_3e} :catch_3f
goto :goto_23
.line 369
:catch_3f
move-exception v1
move-object v4, v1
move-object v1, v0
move-object v0, v4
.line 370
:goto_43
sget-object v2, Lcom/umeng/commonsdk/statistics/common/DeviceConfig;->LOG_TAG:Ljava/lang/String;
const-string v3, "Could not open file /proc/cpuinfo"
invoke-static {v2, v3, v0}, Lcom/umeng/commonsdk/statistics/common/MLog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
move-object v0, v1
goto :goto_23
.line 379
:cond_4c
const-string v0, ""
goto :goto_35
.line 369
:catch_4f
move-exception v1
move-object v4, v1
move-object v1, v0
move-object v0, v4
goto :goto_43
.end method
.method public static getDBencryptID(Landroid/content/Context;)Ljava/lang/String;
.registers 5
.prologue
.line 1629
const/4 v1, 0x0
.line 1631
if-eqz p0, :cond_67
.line 1632
:try_start_3
const-string v0, "phone"
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/telephony/TelephonyManager;
.line 1634
if-eqz v0, :cond_65
.line 1635
const-string v2, "android.permission.READ_PHONE_STATE"
invoke-static {p0, v2}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->checkPermission(Landroid/content/Context;Ljava/lang/String;)Z
move-result v2
if-eqz v2, :cond_65
.line 1636
invoke-virtual {v0}, Landroid/telephony/TelephonyManager;->getDeviceId()Ljava/lang/String;
:try_end_18
.catch Ljava/lang/Throwable; {:try_start_3 .. :try_end_18} :catch_5b
move-result-object v1
move-object v0, v1
.line 1639
:goto_1a
:try_start_1a
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_54
.line 1640
invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v1
const-string v2, "android_id"
invoke-static {v1, v2}, Landroid/provider/Settings$Secure;->getString(Landroid/content/ContentResolver;Ljava/lang/String;)Ljava/lang/String;
:try_end_29
.catch Ljava/lang/Throwable; {:try_start_1a .. :try_end_29} :catch_5e
move-result-object v1
.line 1641
:try_start_2a
invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_63
.line 1643
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0x9
if-lt v0, v2, :cond_63
.line 1644
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
:try_end_38
.catch Ljava/lang/Throwable; {:try_start_2a .. :try_end_38} :catch_60
const/16 v2, 0x1a
if-lt v0, v2, :cond_58
.line 1646
:try_start_3c
const-string v0, "android.os.Build"
invoke-static {v0}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v0
.line 1647
const-string v2, "getSerial"
const/4 v3, 0x0
new-array v3, v3, [Ljava/lang/Class;
invoke-virtual {v0, v2, v3}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
move-result-object v2
.line 1648
const/4 v3, 0x0
new-array v3, v3, [Ljava/lang/Object;
invoke-virtual {v2, v0, v3}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/String;
:try_end_54
.catch Ljava/lang/Throwable; {:try_start_3c .. :try_end_54} :catch_55
.line 1660
:cond_54
:goto_54
return-object v0
.line 1649
:catch_55
move-exception v0
move-object v0, v1
.line 1650
goto :goto_54
.line 1652
:cond_58
:try_start_58
sget-object v0, Landroid/os/Build;->SERIAL:Ljava/lang/String;
:try_end_5a
.catch Ljava/lang/Throwable; {:try_start_58 .. :try_end_5a} :catch_60
goto :goto_54
.line 1658
:catch_5b
move-exception v0
move-object v0, v1
goto :goto_54
:catch_5e
move-exception v1
goto :goto_54
:catch_60
move-exception v0
move-object v0, v1
goto :goto_54
:cond_63
move-object v0, v1
goto :goto_54
:cond_65
move-object v0, v1
goto :goto_1a
:cond_67
move-object v0, v1
goto :goto_54
.end method
.method public static getDeviceId(Landroid/content/Context;)Ljava/lang/String;
.registers 3
.prologue
.line 390
invoke-static {}, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->getDeviceType()I
move-result v0
const/4 v1, 0x2
if-ne v0, v1, :cond_c
.line 391
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getDeviceIdForBox(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
.line 393
:goto_b
return-object v0
:cond_c
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getDeviceIdForGeneral(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
goto :goto_b
.end method
.method public static getDeviceIdForBox(Landroid/content/Context;)Ljava/lang/String;
.registers 7
.prologue
const/16 v2, 0x17
.line 1231
const-string v0, ""
.line 1232
if-nez p0, :cond_7
.line 1327
:cond_6
:goto_6
return-object v0
.line 1236
:cond_7
:try_start_7
sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
if-ge v1, v2, :cond_80
.line 1237
const-string v1, "header_device_id_android_id"
invoke-static {v1}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_3f
.line 1238
invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v1
const-string v2, "android_id"
invoke-static {v1, v2}, Landroid/provider/Settings$Secure;->getString(Landroid/content/ContentResolver;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 1239
sget-boolean v1, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v1, :cond_3f
.line 1240
sget-object v1, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->LOG_TAG:Ljava/lang/String;
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "getDeviceId, ANDROID_ID: "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
aput-object v4, v2, v3
invoke-static {v1, v2}, Lcom/umeng/commonsdk/statistics/common/MLog;->i(Ljava/lang/String;[Ljava/lang/Object;)V
.line 1243
:cond_3f
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1244
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getMacBySystemInterface(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
.line 1245
sget-boolean v1, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v1, :cond_6b
.line 1246
sget-object v1, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->LOG_TAG:Ljava/lang/String;
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "getDeviceId, MAC: "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
aput-object v4, v2, v3
invoke-static {v1, v2}, Lcom/umeng/commonsdk/statistics/common/MLog;->i(Ljava/lang/String;[Ljava/lang/Object;)V
.line 1248
:cond_6b
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1249
invoke-static {}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getSerialNo()Ljava/lang/String;
move-result-object v0
.line 1250
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1251
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getIMEI(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
goto :goto_6
.line 1255
:cond_80
sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
if-ne v1, v2, :cond_10d
.line 1256
const-string v1, "header_device_id_android_id"
invoke-static {v1}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_b8
.line 1257
invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v1
const-string v2, "android_id"
invoke-static {v1, v2}, Landroid/provider/Settings$Secure;->getString(Landroid/content/ContentResolver;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 1258
sget-boolean v1, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v1, :cond_b8
.line 1259
sget-object v1, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->LOG_TAG:Ljava/lang/String;
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "getDeviceId, ANDROID_ID: "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
aput-object v4, v2, v3
invoke-static {v1, v2}, Lcom/umeng/commonsdk/statistics/common/MLog;->i(Ljava/lang/String;[Ljava/lang/Object;)V
.line 1262
:cond_b8
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1263
invoke-static {}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getMacByJavaAPI()Ljava/lang/String;
move-result-object v0
.line 1264
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_d0
.line 1265
sget-boolean v1, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->CHECK_DEVICE:Z
if-eqz v1, :cond_108
.line 1266
invoke-static {}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getMacShell()Ljava/lang/String;
move-result-object v0
.line 1271
:cond_d0
:goto_d0
sget-boolean v1, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v1, :cond_f2
.line 1272
sget-object v1, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->LOG_TAG:Ljava/lang/String;
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "getDeviceId, MAC: "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
aput-object v4, v2, v3
invoke-static {v1, v2}, Lcom/umeng/commonsdk/statistics/common/MLog;->i(Ljava/lang/String;[Ljava/lang/Object;)V
.line 1274
:cond_f2
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1275
invoke-static {}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getSerialNo()Ljava/lang/String;
move-result-object v0
.line 1276
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1277
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getIMEI(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
goto/16 :goto_6
.line 1268
:cond_108
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getMacBySystemInterface(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
goto :goto_d0
.line 1282
:cond_10d
sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0x1d
if-lt v1, v2, :cond_163
.line 1284
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getOaid(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
.line 1285
const-string v1, "test_oaid"
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "+++++++"
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 1286
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1287
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getIdfa(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
.line 1288
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1289
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getAndroidId(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
.line 1290
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1291
invoke-static {}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getSerialNo()Ljava/lang/String;
move-result-object v0
.line 1292
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1293
invoke-static {}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getMacByJavaAPI()Ljava/lang/String;
move-result-object v0
.line 1294
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1295
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getMacBySystemInterface(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
goto/16 :goto_6
.line 1302
:cond_163
const-string v1, "header_device_id_android_id"
invoke-static {v1}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_197
.line 1303
invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v1
const-string v2, "android_id"
invoke-static {v1, v2}, Landroid/provider/Settings$Secure;->getString(Landroid/content/ContentResolver;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 1304
sget-boolean v1, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v1, :cond_197
.line 1305
sget-object v1, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->LOG_TAG:Ljava/lang/String;
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "getDeviceId: ANDROID_ID: "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
aput-object v4, v2, v3
invoke-static {v1, v2}, Lcom/umeng/commonsdk/statistics/common/MLog;->i(Ljava/lang/String;[Ljava/lang/Object;)V
.line 1308
:cond_197
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1309
invoke-static {}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getSerialNo()Ljava/lang/String;
move-result-object v0
.line 1310
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1311
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getIMEI(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
.line 1312
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1313
invoke-static {}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getMacByJavaAPI()Ljava/lang/String;
move-result-object v0
.line 1314
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1315
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getMacBySystemInterface(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
.line 1316
sget-boolean v1, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v1, :cond_6
.line 1317
sget-object v1, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->LOG_TAG:Ljava/lang/String;
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "getDeviceId, MAC: "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
aput-object v4, v2, v3
invoke-static {v1, v2}, Lcom/umeng/commonsdk/statistics/common/MLog;->i(Ljava/lang/String;[Ljava/lang/Object;)V
:try_end_1e1
.catch Ljava/lang/Throwable; {:try_start_7 .. :try_end_1e1} :catch_1e3
goto/16 :goto_6
.line 1324
:catch_1e3
move-exception v1
goto/16 :goto_6
.end method
.method public static getDeviceIdForGeneral(Landroid/content/Context;)Ljava/lang/String;
.registers 7
.prologue
const/16 v2, 0x17
.line 1118
const-string v0, ""
.line 1119
if-nez p0, :cond_7
.line 1215
:cond_6
:goto_6
return-object v0
.line 1123
:cond_7
:try_start_7
sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
if-ge v1, v2, :cond_6f
.line 1124
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getIMEI(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
.line 1125
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1126
sget-boolean v1, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v1, :cond_26
.line 1127
sget-object v1, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->LOG_TAG:Ljava/lang/String;
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
const-string v4, "No IMEI."
aput-object v4, v2, v3
invoke-static {v1, v2}, Lcom/umeng/commonsdk/statistics/common/MLog;->w(Ljava/lang/String;[Ljava/lang/Object;)V
.line 1130
:cond_26
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getMacBySystemInterface(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
.line 1131
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1132
const-string v1, "header_device_id_android_id"
invoke-static {v1}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_64
.line 1133
invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v1
const-string v2, "android_id"
invoke-static {v1, v2}, Landroid/provider/Settings$Secure;->getString(Landroid/content/ContentResolver;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 1134
sget-boolean v1, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v1, :cond_64
.line 1135
sget-object v1, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->LOG_TAG:Ljava/lang/String;
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "getDeviceId, ANDROID_ID: "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
aput-object v4, v2, v3
invoke-static {v1, v2}, Lcom/umeng/commonsdk/statistics/common/MLog;->i(Ljava/lang/String;[Ljava/lang/Object;)V
.line 1138
:cond_64
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1139
invoke-static {}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getSerialNo()Ljava/lang/String;
move-result-object v0
goto :goto_6
.line 1143
:cond_6f
sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
if-ne v1, v2, :cond_fc
.line 1144
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getIMEI(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
.line 1145
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1146
invoke-static {}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getMacByJavaAPI()Ljava/lang/String;
move-result-object v0
.line 1147
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_8f
.line 1148
sget-boolean v1, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->CHECK_DEVICE:Z
if-eqz v1, :cond_f7
.line 1149
invoke-static {}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getMacShell()Ljava/lang/String;
move-result-object v0
.line 1154
:cond_8f
:goto_8f
sget-boolean v1, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v1, :cond_b1
.line 1155
sget-object v1, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->LOG_TAG:Ljava/lang/String;
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "getDeviceId, MAC: "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
aput-object v4, v2, v3
invoke-static {v1, v2}, Lcom/umeng/commonsdk/statistics/common/MLog;->i(Ljava/lang/String;[Ljava/lang/Object;)V
.line 1157
:cond_b1
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1158
const-string v1, "header_device_id_android_id"
invoke-static {v1}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_eb
.line 1159
invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v1
const-string v2, "android_id"
invoke-static {v1, v2}, Landroid/provider/Settings$Secure;->getString(Landroid/content/ContentResolver;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 1160
sget-boolean v1, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v1, :cond_eb
.line 1161
sget-object v1, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->LOG_TAG:Ljava/lang/String;
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "getDeviceId, ANDROID_ID: "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
aput-object v4, v2, v3
invoke-static {v1, v2}, Lcom/umeng/commonsdk/statistics/common/MLog;->i(Ljava/lang/String;[Ljava/lang/Object;)V
.line 1164
:cond_eb
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1165
invoke-static {}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getSerialNo()Ljava/lang/String;
move-result-object v0
goto/16 :goto_6
.line 1151
:cond_f7
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getMacBySystemInterface(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
goto :goto_8f
.line 1169
:cond_fc
sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0x1d
if-lt v1, v2, :cond_152
.line 1171
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getOaid(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
.line 1172
const-string v1, "test_oaid"
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "+++++++"
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 1173
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1174
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getIdfa(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
.line 1175
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1176
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getAndroidId(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
.line 1177
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1178
invoke-static {}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getSerialNo()Ljava/lang/String;
move-result-object v0
.line 1179
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1180
invoke-static {}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getMacByJavaAPI()Ljava/lang/String;
move-result-object v0
.line 1181
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1182
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getMacBySystemInterface(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
goto/16 :goto_6
.line 1189
:cond_152
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getIMEI(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
.line 1190
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1191
invoke-static {}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getSerialNo()Ljava/lang/String;
move-result-object v0
.line 1192
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1193
const-string v1, "header_device_id_android_id"
invoke-static {v1}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_19a
.line 1194
invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v1
const-string v2, "android_id"
invoke-static {v1, v2}, Landroid/provider/Settings$Secure;->getString(Landroid/content/ContentResolver;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 1195
sget-boolean v1, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v1, :cond_19a
.line 1196
sget-object v1, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->LOG_TAG:Ljava/lang/String;
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "getDeviceId, ANDROID_ID: "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
aput-object v4, v2, v3
invoke-static {v1, v2}, Lcom/umeng/commonsdk/statistics/common/MLog;->i(Ljava/lang/String;[Ljava/lang/Object;)V
.line 1199
:cond_19a
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1200
invoke-static {}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getMacByJavaAPI()Ljava/lang/String;
move-result-object v0
.line 1201
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_6
.line 1202
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getMacBySystemInterface(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
.line 1203
sget-boolean v1, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v1, :cond_6
.line 1204
sget-object v1, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->LOG_TAG:Ljava/lang/String;
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "getDeviceId, MAC: "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
aput-object v4, v2, v3
invoke-static {v1, v2}, Lcom/umeng/commonsdk/statistics/common/MLog;->i(Ljava/lang/String;[Ljava/lang/Object;)V
:try_end_1d0
.catch Ljava/lang/Throwable; {:try_start_7 .. :try_end_1d0} :catch_1d2
goto/16 :goto_6
.line 1212
:catch_1d2
move-exception v1
goto/16 :goto_6
.end method
.method public static getDeviceIdUmengMD5(Landroid/content/Context;)Ljava/lang/String;
.registers 2
.prologue
.line 406
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getDeviceId(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Lcom/umeng/commonsdk/statistics/common/HelperUtils;->getUmengMD5(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public static getDeviceType(Landroid/content/Context;)Ljava/lang/String;
.registers 4
.prologue
.line 1598
const-string v0, "Phone"
.line 1599
const-string v1, "header_device_type"
invoke-static {v1}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_c
.line 1601
if-nez p0, :cond_d
.line 1615
:cond_c
:goto_c
return-object v0
.line 1604
:cond_d
:try_start_d
invoke-virtual {p0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v1
invoke-virtual {v1}, Landroid/content/res/Resources;->getConfiguration()Landroid/content/res/Configuration;
move-result-object v1
iget v1, v1, Landroid/content/res/Configuration;->screenLayout:I
and-int/lit8 v1, v1, 0xf
const/4 v2, 0x3
if-lt v1, v2, :cond_22
const/4 v1, 0x1
.line 1606
:goto_1d
if-eqz v1, :cond_24
.line 1607
const-string v0, "Tablet"
goto :goto_c
.line 1604
:cond_22
const/4 v1, 0x0
goto :goto_1d
.line 1609
:cond_24
const-string v0, "Phone"
:try_end_26
.catch Ljava/lang/Throwable; {:try_start_d .. :try_end_26} :catch_27
goto :goto_c
.line 1611
:catch_27
move-exception v1
goto :goto_c
.end method
.method public static getDisplayResolution(Landroid/content/Context;)Ljava/lang/String;
.registers 4
.prologue
.line 532
if-nez p0, :cond_5
.line 533
const-string v0, ""
.line 550
:goto_4
return-object v0
.line 536
:cond_5
:try_start_5
new-instance v1, Landroid/util/DisplayMetrics;
invoke-direct {v1}, Landroid/util/DisplayMetrics;-><init>()V
.line 537
const-string v0, "window"
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/view/WindowManager;
check-cast v0, Landroid/view/WindowManager;
.line 538
if-eqz v0, :cond_41
.line 539
invoke-interface {v0}, Landroid/view/WindowManager;->getDefaultDisplay()Landroid/view/Display;
move-result-object v0
invoke-virtual {v0, v1}, Landroid/view/Display;->getMetrics(Landroid/util/DisplayMetrics;)V
.line 540
iget v0, v1, Landroid/util/DisplayMetrics;->widthPixels:I
.line 541
iget v1, v1, Landroid/util/DisplayMetrics;->heightPixels:I
.line 543
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
invoke-static {v1}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
move-result-object v1
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, "*"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-static {v0}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, 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 :goto_4
.line 546
:cond_41
const-string v0, ""
:try_end_43
.catch Ljava/lang/Throwable; {:try_start_5 .. :try_end_43} :catch_44
goto :goto_4
.line 548
:catch_44
move-exception v0
.line 550
const-string v0, ""
goto :goto_4
.end method
.method private static getEmuiVersion(Ljava/util/Properties;)Ljava/lang/String;
.registers 4
.prologue
const/4 v0, 0x0
.line 1525
.line 1527
:try_start_1
const-string v1, "ro.build.hw_emui_api_level"
const/4 v2, 0x0
invoke-virtual {p0, v1, v2}, Ljava/util/Properties;->getProperty(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
:try_end_7
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_7} :catch_9
move-result-object v0
.line 1531
:goto_8
return-object v0
.line 1528
:catch_9
move-exception v1
goto :goto_8
.end method
.method private static getFlymeVersion(Ljava/util/Properties;)Ljava/lang/String;
.registers 3
.prologue
.line 1509
:try_start_0
const-string v0, "ro.build.display.id"
invoke-virtual {p0, v0}, Ljava/util/Properties;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-static {}, Ljava/util/Locale;->getDefault()Ljava/util/Locale;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/String;->toLowerCase(Ljava/util/Locale;)Ljava/lang/String;
move-result-object v0
.line 1510
const-string v1, "flyme os"
invoke-virtual {v0, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_21
.line 1511
const-string v1, " "
invoke-virtual {v0, v1}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;
move-result-object v0
const/4 v1, 0x2
aget-object v0, v0, v1
:try_end_1f
.catch Ljava/lang/Throwable; {:try_start_0 .. :try_end_1f} :catch_20
.line 1515
:goto_1f
return-object v0
.line 1513
:catch_20
move-exception v0
.line 1515
:cond_21
const/4 v0, 0x0
goto :goto_1f
.end method
.method public static getGPU(Ljavax/microedition/khronos/opengles/GL10;)[Ljava/lang/String;
.registers 6
.prologue
const/4 v4, 0x0
.line 235
const/4 v0, 0x2
:try_start_2
new-array v0, v0, [Ljava/lang/String;
.line 236
const/16 v1, 0x1f00
invoke-interface {p0, v1}, Ljavax/microedition/khronos/opengles/GL10;->glGetString(I)Ljava/lang/String;
move-result-object v1
.line 237
const/16 v2, 0x1f01
invoke-interface {p0, v2}, Ljavax/microedition/khronos/opengles/GL10;->glGetString(I)Ljava/lang/String;
move-result-object v2
.line 238
const/4 v3, 0x0
aput-object v1, v0, v3
.line 239
const/4 v1, 0x1
aput-object v2, v0, v1
:try_end_16
.catch Ljava/lang/Throwable; {:try_start_2 .. :try_end_16} :catch_17
.line 245
:goto_16
return-object v0
.line 241
:catch_17
move-exception v0
.line 242
sget-boolean v1, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v1, :cond_23
.line 243
sget-object v1, Lcom/umeng/commonsdk/statistics/common/DeviceConfig;->LOG_TAG:Ljava/lang/String;
const-string v2, "Could not read gpu infor:"
invoke-static {v1, v2, v0}, Lcom/umeng/commonsdk/statistics/common/MLog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
.line 245
:cond_23
new-array v0, v4, [Ljava/lang/String;
goto :goto_16
.end method
.method private static getIMEI(Landroid/content/Context;)Ljava/lang/String;
.registers 8
.prologue
.line 1355
const-string v1, ""
.line 1356
const-string v0, "header_device_id_imei"
invoke-static {v0}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_c
.line 1357
if-nez p0, :cond_d
.line 1376
:cond_c
:goto_c
return-object v1
.line 1360
:cond_d
const-string v0, "phone"
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/telephony/TelephonyManager;
.line 1361
if-eqz v0, :cond_c
.line 1363
:try_start_17
const-string v2, "android.permission.READ_PHONE_STATE"
invoke-static {p0, v2}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->checkPermission(Landroid/content/Context;Ljava/lang/String;)Z
move-result v2
if-eqz v2, :cond_59
.line 1364
invoke-virtual {v0}, Landroid/telephony/TelephonyManager;->getDeviceId()Ljava/lang/String;
:try_end_22
.catch Ljava/lang/Throwable; {:try_start_17 .. :try_end_22} :catch_47
move-result-object v0
.line 1365
:try_start_23
sget-boolean v1, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v1, :cond_45
.line 1366
sget-object v1, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->LOG_TAG:Ljava/lang/String;
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "getDeviceId, IMEI: "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
aput-object v4, v2, v3
invoke-static {v1, v2}, Lcom/umeng/commonsdk/statistics/common/MLog;->i(Ljava/lang/String;[Ljava/lang/Object;)V
:try_end_45
.catch Ljava/lang/Throwable; {:try_start_23 .. :try_end_45} :catch_54
:cond_45
:goto_45
move-object v1, v0
.line 1373
goto :goto_c
.line 1369
:catch_47
move-exception v0
.line 1370
:goto_48
sget-boolean v2, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v2, :cond_c
.line 1371
sget-object v2, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->LOG_TAG:Ljava/lang/String;
const-string v3, "No IMEI."
invoke-static {v2, v3, v0}, Lcom/umeng/commonsdk/statistics/common/MLog;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
goto :goto_c
.line 1369
:catch_54
move-exception v1
move-object v6, v1
move-object v1, v0
move-object v0, v6
goto :goto_48
:cond_59
move-object v0, v1
goto :goto_45
.end method
.method public static getIPAddress(Landroid/content/Context;)Ljava/lang/String;
.registers 10
.prologue
const/4 v3, 0x0
.line 606
.line 610
:try_start_1
invoke-static {}, Ljava/net/NetworkInterface;->getNetworkInterfaces()Ljava/util/Enumeration;
move-result-object v1
.line 612
invoke-static {v1}, Ljava/util/Collections;->list(Ljava/util/Enumeration;)Ljava/util/ArrayList;
move-result-object v1
invoke-virtual {v1}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v5
move-object v4, v3
:cond_e
invoke-interface {v5}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_6e
invoke-interface {v5}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
move-object v0, v1
check-cast v0, Ljava/net/NetworkInterface;
move-object v2, v0
.line 614
invoke-virtual {v2}, Ljava/net/NetworkInterface;->getInetAddresses()Ljava/util/Enumeration;
move-result-object v1
.line 615
invoke-static {v1}, Ljava/util/Collections;->list(Ljava/util/Enumeration;)Ljava/util/ArrayList;
move-result-object v1
invoke-virtual {v1}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v6
:goto_28
invoke-interface {v6}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_e
invoke-interface {v6}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/net/InetAddress;
.line 618
invoke-virtual {v1}, Ljava/net/InetAddress;->isLoopbackAddress()Z
move-result v7
if-nez v7, :cond_50
instance-of v7, v1, Ljava/net/Inet4Address;
if-eqz v7, :cond_50
invoke-virtual {v2}, Ljava/net/NetworkInterface;->getDisplayName()Ljava/lang/String;
move-result-object v7
const-string v8, "dummy"
invoke-virtual {v7, v8}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v7
if-nez v7, :cond_50
if-nez v4, :cond_50
.line 619
invoke-virtual {v1}, Ljava/net/InetAddress;->getHostAddress()Ljava/lang/String;
move-result-object v4
.line 621
:cond_50
invoke-virtual {v1}, Ljava/net/InetAddress;->isLoopbackAddress()Z
move-result v7
if-nez v7, :cond_7e
instance-of v7, v1, Ljava/net/Inet6Address;
if-eqz v7, :cond_7e
invoke-virtual {v2}, Ljava/net/NetworkInterface;->getDisplayName()Ljava/lang/String;
move-result-object v7
const-string v8, "dummy"
invoke-virtual {v7, v8}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v7
if-nez v7, :cond_7e
if-nez v3, :cond_7e
.line 622
invoke-virtual {v1}, Ljava/net/InetAddress;->getHostAddress()Ljava/lang/String;
:try_end_6b
.catch Ljava/net/SocketException; {:try_start_1 .. :try_end_6b} :catch_74
move-result-object v1
:goto_6c
move-object v3, v1
.line 625
goto :goto_28
:cond_6e
move-object v1, v3
move-object v2, v4
.line 634
:goto_70
if-eqz v2, :cond_79
move-object v1, v2
.line 644
:cond_73
:goto_73
return-object v1
.line 630
:catch_74
move-exception v1
.line 632
const-string v2, "SocketException"
move-object v1, v3
goto :goto_70
.line 640
:cond_79
if-nez v1, :cond_73
.line 642
const-string v1, "null"
goto :goto_73
:cond_7e
move-object v1, v3
goto :goto_6c
.end method
.method private static getIdfa(Landroid/content/Context;)Ljava/lang/String;
.registers 3
.prologue
.line 1344
const-string v0, ""
.line 1346
:try_start_2
const-string v1, "header_tracking_idfa"
invoke-static {v1}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_e
.line 1347
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/a;->a(Landroid/content/Context;)Ljava/lang/String;
:try_end_d
.catch Ljava/lang/Throwable; {:try_start_2 .. :try_end_d} :catch_f
move-result-object v0
.line 1351
:cond_e
:goto_e
return-object v0
.line 1349
:catch_f
move-exception v1
goto :goto_e
.end method
.method public static getImei(Landroid/content/Context;)Ljava/lang/String;
.registers 4
.prologue
.line 81
const/4 v1, 0x0
.line 83
if-eqz p0, :cond_26
.line 84
:try_start_3
const-string v0, "phone"
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/telephony/TelephonyManager;
.line 85
if-eqz v0, :cond_26
.line 86
const-string v2, "android.permission.READ_PHONE_STATE"
invoke-static {p0, v2}, Lcom/umeng/commonsdk/statistics/common/DeviceConfig;->checkPermission(Landroid/content/Context;Ljava/lang/String;)Z
move-result v2
if-eqz v2, :cond_26
.line 87
invoke-virtual {v0}, Landroid/telephony/TelephonyManager;->getDeviceId()Ljava/lang/String;
:try_end_18
.catch Ljava/lang/Exception; {:try_start_3 .. :try_end_18} :catch_1b
move-result-object v0
:goto_19
move-object v1, v0
.line 95
:cond_1a
:goto_1a
return-object v1
.line 91
:catch_1b
move-exception v0
.line 92
sget-boolean v2, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v2, :cond_1a
.line 93
const-string v2, "No IMEI."
invoke-static {v2, v0}, Lcom/umeng/commonsdk/statistics/common/MLog;->w(Ljava/lang/String;Ljava/lang/Throwable;)V
goto :goto_1a
:cond_26
move-object v0, v1
goto :goto_19
.end method
.method public static getImeiNew(Landroid/content/Context;)Ljava/lang/String;
.registers 7
.prologue
.line 99
const/4 v2, 0x0
.line 101
:try_start_1
const-string v0, "header_tracking_imei"
invoke-static {v0}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_64
.line 102
if-eqz p0, :cond_64
.line 103
const-string v0, "phone"
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/telephony/TelephonyManager;
.line 104
if-eqz v0, :cond_64
.line 105
const-string v1, "android.permission.READ_PHONE_STATE"
invoke-static {p0, v1}, Lcom/umeng/commonsdk/statistics/common/DeviceConfig;->checkPermission(Landroid/content/Context;Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_64
.line 106
sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
:try_end_1f
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1f} :catch_50
const/16 v3, 0x1a
if-lt v1, v3, :cond_4b
.line 108
:try_start_23
invoke-virtual {v0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v1
const-string v3, "getImei"
const/4 v4, 0x0
new-array v4, v4, [Ljava/lang/Class;
invoke-virtual {v1, v3, v4}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
move-result-object v1
.line 109
const/4 v3, 0x1
invoke-virtual {v1, v3}, Ljava/lang/reflect/Method;->setAccessible(Z)V
.line 110
const/4 v3, 0x0
new-array v3, v3, [Ljava/lang/Object;
invoke-virtual {v1, v0, v3}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/lang/String;
:try_end_3d
.catch Ljava/lang/Exception; {:try_start_23 .. :try_end_3d} :catch_48
.line 113
:goto_3d
:try_start_3d
invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v2
if-eqz v2, :cond_62
.line 114
invoke-virtual {v0}, Landroid/telephony/TelephonyManager;->getDeviceId()Ljava/lang/String;
:try_end_46
.catch Ljava/lang/Exception; {:try_start_3d .. :try_end_46} :catch_5d
move-result-object v0
.line 127
:cond_47
:goto_47
return-object v0
.line 111
:catch_48
move-exception v1
move-object v1, v2
goto :goto_3d
.line 117
:cond_4b
:try_start_4b
invoke-virtual {v0}, Landroid/telephony/TelephonyManager;->getDeviceId()Ljava/lang/String;
:try_end_4e
.catch Ljava/lang/Exception; {:try_start_4b .. :try_end_4e} :catch_50
move-result-object v0
goto :goto_47
.line 123
:catch_50
move-exception v0
move-object v1, v0
move-object v0, v2
.line 124
:goto_53
sget-boolean v2, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v2, :cond_47
.line 125
const-string v2, "No IMEI."
invoke-static {v2, v1}, Lcom/umeng/commonsdk/statistics/common/MLog;->w(Ljava/lang/String;Ljava/lang/Throwable;)V
goto :goto_47
.line 123
:catch_5d
move-exception v0
move-object v5, v0
move-object v0, v1
move-object v1, v5
goto :goto_53
:cond_62
move-object v0, v1
goto :goto_47
:cond_64
move-object v0, v2
goto :goto_47
.end method
.method public static getImsi(Landroid/content/Context;)Ljava/lang/String;
.registers 4
.prologue
const/4 v1, 0x0
.line 458
if-nez p0, :cond_4
.line 472
:goto_3
return-object v1
.line 461
:cond_4
const-string v0, "phone"
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/telephony/TelephonyManager;
.line 464
:try_start_c
const-string v2, "android.permission.READ_PHONE_STATE"
invoke-static {p0, v2}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->checkPermission(Landroid/content/Context;Ljava/lang/String;)Z
move-result v2
if-eqz v2, :cond_1f
.line 465
if-eqz v0, :cond_1f
.line 466
invoke-virtual {v0}, Landroid/telephony/TelephonyManager;->getSubscriberId()Ljava/lang/String;
:try_end_19
.catch Ljava/lang/Throwable; {:try_start_c .. :try_end_19} :catch_1c
move-result-object v0
:goto_1a
move-object v1, v0
.line 472
goto :goto_3
.line 469
:catch_1c
move-exception v0
move-object v0, v1
goto :goto_1a
:cond_1f
move-object v0, v1
goto :goto_1a
.end method
.method private static getLocale(Landroid/content/Context;)Ljava/util/Locale;
.registers 6
.prologue
.line 817
const/4 v0, 0x0
.line 818
if-nez p0, :cond_8
.line 819
invoke-static {}, Ljava/util/Locale;->getDefault()Ljava/util/Locale;
move-result-object v0
.line 838
:cond_7
:goto_7
return-object v0
.line 824
:cond_8
:try_start_8
new-instance v1, Landroid/content/res/Configuration;
invoke-direct {v1}, Landroid/content/res/Configuration;-><init>()V
.line 825
invoke-virtual {v1}, Landroid/content/res/Configuration;->setToDefaults()V
.line 826
invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v2
invoke-static {v2, v1}, Landroid/provider/Settings$System;->getConfiguration(Landroid/content/ContentResolver;Landroid/content/res/Configuration;)V
.line 827
if-eqz v1, :cond_1b
.line 828
iget-object v0, v1, Landroid/content/res/Configuration;->locale:Ljava/util/Locale;
:try_end_1b
.catch Ljava/lang/Throwable; {:try_start_8 .. :try_end_1b} :catch_22
.line 834
:cond_1b
:goto_1b
if-nez v0, :cond_7
.line 835
invoke-static {}, Ljava/util/Locale;->getDefault()Ljava/util/Locale;
move-result-object v0
goto :goto_7
.line 830
:catch_22
move-exception v1
.line 831
sget-object v1, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->LOG_TAG:Ljava/lang/String;
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
const-string v4, "fail to read user config locale"
aput-object v4, v2, v3
invoke-static {v1, v2}, Lcom/umeng/commonsdk/statistics/common/MLog;->e(Ljava/lang/String;[Ljava/lang/Object;)V
goto :goto_1b
.end method
.method public static getLocaleInfo(Landroid/content/Context;)[Ljava/lang/String;
.registers 5
.prologue
const/4 v3, 0x1
const/4 v2, 0x0
.line 784
const/4 v0, 0x2
new-array v0, v0, [Ljava/lang/String;
const-string v1, "Unknown"
aput-object v1, v0, v2
const-string v1, "Unknown"
aput-object v1, v0, v3
.line 785
const-string v1, "header_local_info"
invoke-static {v1}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_17
.line 786
if-nez p0, :cond_18
.line 807
:cond_17
:goto_17
return-object v0
.line 790
:cond_18
:try_start_18
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getLocale(Landroid/content/Context;)Ljava/util/Locale;
move-result-object v1
.line 792
if-eqz v1, :cond_2c
.line 793
const/4 v2, 0x0
invoke-virtual {v1}, Ljava/util/Locale;->getCountry()Ljava/lang/String;
move-result-object v3
aput-object v3, v0, v2
.line 794
const/4 v2, 0x1
invoke-virtual {v1}, Ljava/util/Locale;->getLanguage()Ljava/lang/String;
move-result-object v1
aput-object v1, v0, v2
.line 797
:cond_2c
const/4 v1, 0x0
aget-object v1, v0, v1
invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_3a
.line 798
const/4 v1, 0x0
const-string v2, "Unknown"
aput-object v2, v0, v1
.line 799
:cond_3a
const/4 v1, 0x1
aget-object v1, v0, v1
invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_17
.line 800
const/4 v1, 0x1
const-string v2, "Unknown"
aput-object v2, v0, v1
:try_end_48
.catch Ljava/lang/Throwable; {:try_start_18 .. :try_end_48} :catch_49
goto :goto_17
.line 803
:catch_49
move-exception v1
.line 804
sget-object v2, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->LOG_TAG:Ljava/lang/String;
const-string v3, "error in getLocaleInfo"
invoke-static {v2, v3, v1}, Lcom/umeng/commonsdk/statistics/common/MLog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
goto :goto_17
.end method
.method public static getMCCMNC(Landroid/content/Context;)Ljava/lang/String;
.registers 7
.prologue
const/4 v0, 0x0
.line 421
:try_start_1
const-string v1, "header_mccmnc"
invoke-static {v1}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_b
.line 422
if-nez p0, :cond_c
.line 441
:cond_b
:goto_b
return-object v0
.line 425
:cond_c
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getImsi(Landroid/content/Context;)Ljava/lang/String;
move-result-object v1
if-eqz v1, :cond_b
.line 428
invoke-virtual {p0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v1
invoke-virtual {v1}, Landroid/content/res/Resources;->getConfiguration()Landroid/content/res/Configuration;
move-result-object v1
iget v2, v1, Landroid/content/res/Configuration;->mcc:I
.line 429
invoke-virtual {p0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v1
invoke-virtual {v1}, Landroid/content/res/Resources;->getConfiguration()Landroid/content/res/Configuration;
move-result-object v1
iget v3, v1, Landroid/content/res/Configuration;->mnc:I
.line 430
if-eqz v2, :cond_b
.line 431
invoke-static {v3}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
move-result-object v1
.line 432
const/16 v4, 0xa
if-ge v3, v4, :cond_40
.line 433
const-string v1, "%02d"
const/4 v4, 0x1
new-array v4, v4, [Ljava/lang/Object;
const/4 v5, 0x0
invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v3
aput-object v3, v4, v5
invoke-static {v1, v4}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v1
.line 435
:cond_40
new-instance v3, Ljava/lang/StringBuffer;
invoke-direct {v3}, Ljava/lang/StringBuffer;-><init>()V
invoke-static {v2}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
move-result-object v2
invoke-virtual {v3, v2}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;
move-result-object v2
invoke-virtual {v2, v1}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String;
:try_end_54
.catch Ljava/lang/Throwable; {:try_start_1 .. :try_end_54} :catch_56
move-result-object v0
goto :goto_b
.line 438
:catch_56
move-exception v1
goto :goto_b
.end method
.method public static getMac(Landroid/content/Context;)Ljava/lang/String;
.registers 4
.prologue
const/16 v2, 0x17
.line 848
const-string v0, ""
.line 849
const-string v1, "header_mc"
invoke-static {v1}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v1
if-nez v1, :cond_14
const-string v1, "header_tracking_mac"
invoke-static {v1}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_16
.line 850
:cond_14
if-nez p0, :cond_17
.line 870
:cond_16
:goto_16
return-object v0
.line 853
:cond_17
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
if-ge v0, v2, :cond_20
.line 854
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getMacBySystemInterface(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
goto :goto_16
.line 855
:cond_20
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
if-ne v0, v2, :cond_3c
.line 856
invoke-static {}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getMacByJavaAPI()Ljava/lang/String;
move-result-object v0
.line 857
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_16
.line 858
sget-boolean v0, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->CHECK_DEVICE:Z
if-eqz v0, :cond_37
.line 859
invoke-static {}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getMacShell()Ljava/lang/String;
move-result-object v0
goto :goto_16
.line 861
:cond_37
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getMacBySystemInterface(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
goto :goto_16
.line 865
:cond_3c
invoke-static {}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getMacByJavaAPI()Ljava/lang/String;
move-result-object v0
.line 866
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_16
.line 867
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getMacBySystemInterface(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
goto :goto_16
.end method
.method private static getMacByJavaAPI()Ljava/lang/String;
.registers 9
.prologue
const/4 v1, 0x0
const/4 v2, 0x0
.line 257
:try_start_2
const-string v0, "header_device_id_mac"
invoke-static {v0}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_7b
.line 258
invoke-static {}, Ljava/net/NetworkInterface;->getNetworkInterfaces()Ljava/util/Enumeration;
move-result-object v3
.line 259
:cond_e
invoke-interface {v3}, Ljava/util/Enumeration;->hasMoreElements()Z
move-result v0
if-eqz v0, :cond_7b
.line 260
invoke-interface {v3}, Ljava/util/Enumeration;->nextElement()Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/net/NetworkInterface;
.line 261
const-string v4, "wlan0"
invoke-virtual {v0}, Ljava/net/NetworkInterface;->getName()Ljava/lang/String;
move-result-object v5
invoke-virtual {v4, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-nez v4, :cond_32
const-string v4, "eth0"
invoke-virtual {v0}, Ljava/net/NetworkInterface;->getName()Ljava/lang/String;
move-result-object v5
invoke-virtual {v4, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_e
.line 262
:cond_32
invoke-virtual {v0}, Ljava/net/NetworkInterface;->getHardwareAddress()[B
move-result-object v3
.line 263
if-eqz v3, :cond_3b
array-length v0, v3
if-nez v0, :cond_3d
:cond_3b
move-object v0, v1
.line 279
:goto_3c
return-object v0
.line 266
:cond_3d
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
.line 267
array-length v5, v3
move v0, v2
:goto_44
if-ge v0, v5, :cond_5e
aget-byte v2, v3, v0
.line 268
const-string v6, "%02X:"
const/4 v7, 0x1
new-array v7, v7, [Ljava/lang/Object;
const/4 v8, 0x0
invoke-static {v2}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
move-result-object v2
aput-object v2, v7, v8
invoke-static {v6, v7}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v2
invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 267
add-int/lit8 v0, v0, 0x1
goto :goto_44
.line 270
:cond_5e
invoke-virtual {v4}, Ljava/lang/StringBuilder;->length()I
move-result v0
if-lez v0, :cond_6d
.line 271
invoke-virtual {v4}, Ljava/lang/StringBuilder;->length()I
move-result v0
add-int/lit8 v0, v0, -0x1
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->deleteCharAt(I)Ljava/lang/StringBuilder;
.line 273
:cond_6d
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-static {}, Ljava/util/Locale;->getDefault()Ljava/util/Locale;
move-result-object v2
invoke-virtual {v0, v2}, Ljava/lang/String;->toLowerCase(Ljava/util/Locale;)Ljava/lang/String;
:try_end_78
.catch Ljava/lang/Throwable; {:try_start_2 .. :try_end_78} :catch_7a
move-result-object v0
goto :goto_3c
.line 277
:catch_7a
move-exception v0
:cond_7b
move-object v0, v1
.line 279
goto :goto_3c
.end method
.method private static getMacBySystemInterface(Landroid/content/Context;)Ljava/lang/String;
.registers 7
.prologue
const/4 v4, 0x1
const/4 v5, 0x0
.line 880
if-nez p0, :cond_7
.line 881
const-string v0, ""
.line 905
:goto_6
return-object v0
.line 884
:cond_7
:try_start_7
const-string v0, "header_device_id_mac"
invoke-static {v0}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_41
.line 885
const-string v0, "wifi"
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/net/wifi/WifiManager;
.line 886
const-string v1, "android.permission.ACCESS_WIFI_STATE"
invoke-static {p0, v1}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->checkPermission(Landroid/content/Context;Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_2d
.line 887
if-eqz v0, :cond_2a
.line 888
invoke-virtual {v0}, Landroid/net/wifi/WifiManager;->getConnectionInfo()Landroid/net/wifi/WifiInfo;
move-result-object v0
.line 889
invoke-virtual {v0}, Landroid/net/wifi/WifiInfo;->getMacAddress()Ljava/lang/String;
move-result-object v0
goto :goto_6
.line 891
:cond_2a
const-string v0, ""
goto :goto_6
.line 894
:cond_2d
sget-boolean v0, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v0, :cond_3e
.line 895
sget-object v0, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->LOG_TAG:Ljava/lang/String;
const/4 v1, 0x1
new-array v1, v1, [Ljava/lang/Object;
const/4 v2, 0x0
const-string v3, "Could not get mac address.[no permission android.permission.ACCESS_WIFI_STATE"
aput-object v3, v1, v2
invoke-static {v0, v1}, Lcom/umeng/commonsdk/statistics/common/MLog;->w(Ljava/lang/String;[Ljava/lang/Object;)V
.line 897
:cond_3e
const-string v0, ""
goto :goto_6
.line 900
:cond_41
const-string v0, ""
:try_end_43
.catch Ljava/lang/Throwable; {:try_start_7 .. :try_end_43} :catch_44
goto :goto_6
.line 901
:catch_44
move-exception v0
.line 902
sget-boolean v1, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v1, :cond_69
.line 903
sget-object v1, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->LOG_TAG:Ljava/lang/String;
new-array v2, v4, [Ljava/lang/Object;
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "Could not get mac address."
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
invoke-virtual {v0}, Ljava/lang/Throwable;->toString()Ljava/lang/String;
move-result-object v0
invoke-virtual {v3, v0}, 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
aput-object v0, v2, v5
invoke-static {v1, v2}, Lcom/umeng/commonsdk/statistics/common/MLog;->w(Ljava/lang/String;[Ljava/lang/Object;)V
.line 905
:cond_69
const-string v0, ""
goto :goto_6
.end method
.method private static getMacShell()Ljava/lang/String;
.registers 5
.prologue
const/4 v0, 0x0
.line 291
:try_start_1
const-string v1, "header_device_id_mac"
invoke-static {v1}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_39
.line 292
const/4 v1, 0x3
new-array v2, v1, [Ljava/lang/String;
const/4 v1, 0x0
const-string v3, "/sys/class/net/wlan0/address"
aput-object v3, v2, v1
const/4 v1, 0x1
const-string v3, "/sys/class/net/eth0/address"
aput-object v3, v2, v1
const/4 v1, 0x2
const-string v3, "/sys/devices/virtual/net/wlan0/address"
aput-object v3, v2, v1
move v1, v0
.line 295
:goto_1c
array-length v0, v2
:try_end_1d
.catch Ljava/lang/Throwable; {:try_start_1 .. :try_end_1d} :catch_38
if-ge v1, v0, :cond_39
.line 297
:try_start_1f
aget-object v0, v2, v1
invoke-static {v0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->reaMac(Ljava/lang/String;)Ljava/lang/String;
:try_end_24
.catch Ljava/lang/Throwable; {:try_start_1f .. :try_end_24} :catch_28
move-result-object v0
.line 298
if-eqz v0, :cond_34
.line 311
:goto_27
return-object v0
.line 301
:catch_28
move-exception v0
.line 302
:try_start_29
sget-boolean v3, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v3, :cond_34
.line 303
sget-object v3, Lcom/umeng/commonsdk/statistics/common/DeviceConfig;->LOG_TAG:Ljava/lang/String;
const-string v4, "open file Failed"
invoke-static {v3, v4, v0}, Lcom/umeng/commonsdk/statistics/common/MLog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
:try_end_34
.catch Ljava/lang/Throwable; {:try_start_29 .. :try_end_34} :catch_38
.line 295
:cond_34
add-int/lit8 v0, v1, 0x1
move v1, v0
goto :goto_1c
.line 308
:catch_38
move-exception v0
.line 311
:cond_39
const/4 v0, 0x0
goto :goto_27
.end method
.method public static getNetworkAccessMode(Landroid/content/Context;)[Ljava/lang/String;
.registers 5
.prologue
const/4 v3, 0x1
const/4 v2, 0x0
.line 563
const/4 v0, 0x2
new-array v1, v0, [Ljava/lang/String;
const-string v0, ""
aput-object v0, v1, v2
const-string v0, ""
aput-object v0, v1, v3
.line 564
if-nez p0, :cond_11
move-object v0, v1
.line 600
:goto_10
return-object v0
.line 567
:cond_11
const-string v0, "header_access"
invoke-static {v0}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_6d
.line 569
:try_start_19
const-string v0, "android.permission.ACCESS_NETWORK_STATE"
invoke-static {p0, v0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->checkPermission(Landroid/content/Context;Ljava/lang/String;)Z
move-result v0
if-nez v0, :cond_28
.line 570
const/4 v0, 0x0
const-string v2, ""
aput-object v2, v1, v0
move-object v0, v1
.line 571
goto :goto_10
.line 574
:cond_28
const-string v0, "connectivity"
.line 575
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/net/ConnectivityManager;
.line 576
if-nez v0, :cond_39
.line 577
const/4 v0, 0x0
const-string v2, ""
aput-object v2, v1, v0
move-object v0, v1
.line 578
goto :goto_10
.line 580
:cond_39
const/4 v2, 0x1
invoke-virtual {v0, v2}, Landroid/net/ConnectivityManager;->getNetworkInfo(I)Landroid/net/NetworkInfo;
move-result-object v2
.line 581
if-eqz v2, :cond_4f
.line 582
invoke-virtual {v2}, Landroid/net/NetworkInfo;->getState()Landroid/net/NetworkInfo$State;
move-result-object v2
sget-object v3, Landroid/net/NetworkInfo$State;->CONNECTED:Landroid/net/NetworkInfo$State;
if-ne v2, v3, :cond_4f
.line 583
const/4 v0, 0x0
const-string v2, "Wi-Fi"
aput-object v2, v1, v0
move-object v0, v1
.line 584
goto :goto_10
.line 587
:cond_4f
const/4 v2, 0x0
invoke-virtual {v0, v2}, Landroid/net/ConnectivityManager;->getNetworkInfo(I)Landroid/net/NetworkInfo;
move-result-object v0
.line 588
if-eqz v0, :cond_6d
.line 589
invoke-virtual {v0}, Landroid/net/NetworkInfo;->getState()Landroid/net/NetworkInfo$State;
move-result-object v2
sget-object v3, Landroid/net/NetworkInfo$State;->CONNECTED:Landroid/net/NetworkInfo$State;
if-ne v2, v3, :cond_6d
.line 590
const/4 v2, 0x0
const-string v3, "2G/3G"
aput-object v3, v1, v2
.line 591
const/4 v2, 0x1
invoke-virtual {v0}, Landroid/net/NetworkInfo;->getSubtypeName()Ljava/lang/String;
move-result-object v0
aput-object v0, v1, v2
:try_end_6a
.catch Ljava/lang/Throwable; {:try_start_19 .. :try_end_6a} :catch_6c
move-object v0, v1
.line 592
goto :goto_10
.line 596
:catch_6c
move-exception v0
:cond_6d
move-object v0, v1
.line 600
goto :goto_10
.end method
.method public static getNetworkOperatorName(Landroid/content/Context;)Ljava/lang/String;
.registers 3
.prologue
.line 509
if-nez p0, :cond_5
.line 510
const-string v0, ""
.line 522
:goto_4
return-object v0
.line 512
:cond_5
const-string v0, "header_carrier"
invoke-static {v0}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_25
.line 514
:try_start_d
const-string v0, "phone"
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/telephony/TelephonyManager;
.line 515
const-string v1, "android.permission.READ_PHONE_STATE"
invoke-static {p0, v1}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->checkPermission(Landroid/content/Context;Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_25
.line 516
if-eqz v0, :cond_25
.line 517
invoke-virtual {v0}, Landroid/telephony/TelephonyManager;->getNetworkOperatorName()Ljava/lang/String;
:try_end_22
.catch Ljava/lang/Throwable; {:try_start_d .. :try_end_22} :catch_24
move-result-object v0
goto :goto_4
.line 519
:catch_24
move-exception v0
.line 522
:cond_25
const-string v0, ""
goto :goto_4
.end method
.method public static getNetworkType(Landroid/content/Context;)I
.registers 2
.prologue
.line 651
.line 654
:try_start_0
const-string v0, "phone"
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/telephony/TelephonyManager;
.line 655
invoke-virtual {v0}, Landroid/telephony/TelephonyManager;->getNetworkType()I
:try_end_b
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_b} :catch_d
move-result v0
.line 661
:goto_c
return v0
.line 657
:catch_d
move-exception v0
.line 659
const/16 v0, -0x64
goto :goto_c
.end method
.method private static getOaid(Landroid/content/Context;)Ljava/lang/String;
.registers 5
.prologue
.line 1331
const-string v0, ""
.line 1333
:try_start_2
const-string v1, "umeng_sp_oaid"
const/4 v2, 0x0
invoke-virtual {p0, v1, v2}, Landroid/content/Context;->getSharedPreferences(Ljava/lang/String;I)Landroid/content/SharedPreferences;
move-result-object v1
.line 1335
if-eqz v1, :cond_13
.line 1336
const-string v2, "key_umeng_sp_oaid"
const-string v3, ""
invoke-interface {v1, v2, v3}, Landroid/content/SharedPreferences;->getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
:try_end_12
.catch Ljava/lang/Throwable; {:try_start_2 .. :try_end_12} :catch_14
move-result-object v0
.line 1340
:cond_13
:goto_13
return-object v0
.line 1338
:catch_14
move-exception v1
goto :goto_13
.end method
.method public static getPackageName(Landroid/content/Context;)Ljava/lang/String;
.registers 2
.prologue
.line 979
if-nez p0, :cond_4
.line 980
const/4 v0, 0x0
.line 982
:goto_3
return-object v0
:cond_4
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v0
goto :goto_3
.end method
.method public static getRegisteredOperator(Landroid/content/Context;)Ljava/lang/String;
.registers 4
.prologue
const/4 v1, 0x0
.line 484
if-nez p0, :cond_4
.line 499
:goto_3
return-object v1
.line 489
:cond_4
:try_start_4
const-string v0, "phone"
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/telephony/TelephonyManager;
.line 491
const-string v2, "android.permission.READ_PHONE_STATE"
invoke-static {p0, v2}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->checkPermission(Landroid/content/Context;Ljava/lang/String;)Z
move-result v2
if-eqz v2, :cond_1f
.line 492
if-eqz v0, :cond_1f
.line 493
invoke-virtual {v0}, Landroid/telephony/TelephonyManager;->getNetworkOperator()Ljava/lang/String;
:try_end_19
.catch Ljava/lang/Throwable; {:try_start_4 .. :try_end_19} :catch_1c
move-result-object v0
:goto_1a
move-object v1, v0
.line 499
goto :goto_3
.line 496
:catch_1c
move-exception v0
move-object v0, v1
goto :goto_1a
:cond_1f
move-object v0, v1
goto :goto_1a
.end method
.method public static getResolutionArray(Landroid/content/Context;)[I
.registers 6
.prologue
const/4 v1, 0x0
const/4 v3, -0x1
.line 916
if-nez p0, :cond_6
move-object v0, v1
.line 958
:goto_5
return-object v0
.line 919
:cond_6
const-string v0, "header_resolution"
invoke-static {v0}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_60
.line 921
:try_start_e
new-instance v4, Landroid/util/DisplayMetrics;
invoke-direct {v4}, Landroid/util/DisplayMetrics;-><init>()V
.line 922
const-string v0, "window"
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/view/WindowManager;
check-cast v0, Landroid/view/WindowManager;
.line 923
if-nez v0, :cond_21
move-object v0, v1
.line 924
goto :goto_5
.line 926
:cond_21
invoke-interface {v0}, Landroid/view/WindowManager;->getDefaultDisplay()Landroid/view/Display;
move-result-object v0
invoke-virtual {v0, v4}, Landroid/view/Display;->getMetrics(Landroid/util/DisplayMetrics;)V
.line 930
invoke-virtual {p0}, Landroid/content/Context;->getApplicationInfo()Landroid/content/pm/ApplicationInfo;
move-result-object v0
iget v0, v0, Landroid/content/pm/ApplicationInfo;->flags:I
and-int/lit16 v0, v0, 0x2000
if-nez v0, :cond_6c
.line 931
const-string v0, "noncompatWidthPixels"
invoke-static {v4, v0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->reflectMetrics(Ljava/lang/Object;Ljava/lang/String;)I
move-result v2
.line 932
const-string v0, "noncompatHeightPixels"
invoke-static {v4, v0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->reflectMetrics(Ljava/lang/Object;Ljava/lang/String;)I
move-result v0
.line 935
:goto_3e
if-eq v2, v3, :cond_42
if-ne v0, v3, :cond_69
.line 936
:cond_42
iget v2, v4, Landroid/util/DisplayMetrics;->widthPixels:I
.line 937
iget v0, v4, Landroid/util/DisplayMetrics;->heightPixels:I
move v3, v2
move v2, v0
.line 940
:goto_48
const/4 v0, 0x2
new-array v0, v0, [I
.line 942
if-le v3, v2, :cond_62
.line 943
const/4 v4, 0x0
aput v2, v0, v4
.line 944
const/4 v2, 0x1
aput v3, v0, v2
:try_end_53
.catch Ljava/lang/Throwable; {:try_start_e .. :try_end_53} :catch_54
goto :goto_5
.line 951
:catch_54
move-exception v0
.line 952
sget-boolean v2, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v2, :cond_60
.line 953
sget-object v2, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->LOG_TAG:Ljava/lang/String;
const-string v3, "read resolution fail"
invoke-static {v2, v3, v0}, Lcom/umeng/commonsdk/statistics/common/MLog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
:cond_60
move-object v0, v1
.line 958
goto :goto_5
.line 946
:cond_62
const/4 v4, 0x0
:try_start_63
aput v3, v0, v4
.line 947
const/4 v3, 0x1
aput v2, v0, v3
:try_end_68
.catch Ljava/lang/Throwable; {:try_start_63 .. :try_end_68} :catch_54
goto :goto_5
:cond_69
move v3, v2
move v2, v0
goto :goto_48
:cond_6c
move v0, v3
move v2, v3
goto :goto_3e
.end method
.method public static getSerial()Ljava/lang/String;
.registers 4
.prologue
const/4 v1, 0x0
.line 148
const-string v0, "header_tracking_serial"
invoke-static {v0}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_34
.line 149
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0x9
if-lt v0, v2, :cond_34
.line 152
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
.line 153
const/16 v2, 0x1a
if-lt v0, v2, :cond_31
.line 155
:try_start_15
const-string v0, "android.os.Build"
invoke-static {v0}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v0
.line 156
const-string v2, "getSerial"
const/4 v3, 0x0
new-array v3, v3, [Ljava/lang/Class;
invoke-virtual {v0, v2, v3}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
move-result-object v2
.line 157
const/4 v3, 0x0
new-array v3, v3, [Ljava/lang/Object;
invoke-virtual {v2, v0, v3}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/String;
:try_end_2d
.catch Ljava/lang/Throwable; {:try_start_15 .. :try_end_2d} :catch_2e
.line 166
:goto_2d
return-object v0
.line 158
:catch_2e
move-exception v0
move-object v0, v1
.line 159
goto :goto_2d
.line 161
:cond_31
sget-object v0, Landroid/os/Build;->SERIAL:Ljava/lang/String;
goto :goto_2d
:cond_34
move-object v0, v1
.line 166
goto :goto_2d
.end method
.method private static getSerialNo()Ljava/lang/String;
.registers 6
.prologue
const/4 v5, 0x0
.line 1386
const-string v1, ""
.line 1387
const-string v0, "header_device_id_serialNo"
invoke-static {v0}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_57
.line 1388
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0x9
if-lt v0, v2, :cond_57
.line 1390
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0x1a
if-lt v0, v2, :cond_54
.line 1392
:try_start_17
const-string v0, "android.os.Build"
invoke-static {v0}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v0
.line 1393
const-string v2, "getSerial"
const/4 v3, 0x0
new-array v3, v3, [Ljava/lang/Class;
invoke-virtual {v0, v2, v3}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
move-result-object v2
.line 1394
const/4 v3, 0x0
new-array v3, v3, [Ljava/lang/Object;
invoke-virtual {v2, v0, v3}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/String;
:try_end_2f
.catch Ljava/lang/Throwable; {:try_start_17 .. :try_end_2f} :catch_51
.line 1402
:goto_2f
sget-boolean v1, Lcom/umeng/commonsdk/statistics/AnalyticsConstants;->UM_DEBUG:Z
if-eqz v1, :cond_50
.line 1403
sget-object v1, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->LOG_TAG:Ljava/lang/String;
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "getDeviceId, serial no: "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
aput-object v3, v2, v5
invoke-static {v1, v2}, Lcom/umeng/commonsdk/statistics/common/MLog;->i(Ljava/lang/String;[Ljava/lang/Object;)V
.line 1405
:cond_50
return-object v0
.line 1395
:catch_51
move-exception v0
move-object v0, v1
.line 1396
goto :goto_2f
.line 1398
:cond_54
sget-object v0, Landroid/os/Build;->SERIAL:Ljava/lang/String;
goto :goto_2f
:cond_57
move-object v0, v1
goto :goto_2f
.end method
.method public static getSubOSName(Landroid/content/Context;)Ljava/lang/String;
.registers 5
.prologue
const/4 v1, 0x0
.line 1418
.line 1419
const-string v0, "header_sub_os_name"
invoke-static {v0}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_3e
.line 1420
invoke-static {}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getBuildProp()Ljava/util/Properties;
move-result-object v2
.line 1422
:try_start_d
const-string v0, "ro.miui.ui.version.name"
invoke-virtual {v2, v0}, Ljava/util/Properties;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 1423
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v3
if-eqz v3, :cond_38
.line 1424
invoke-static {}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->isFlyMe()Z
move-result v3
if-eqz v3, :cond_22
.line 1425
const-string v0, "Flyme"
.line 1441
:cond_21
:goto_21
return-object v0
.line 1426
:cond_22
invoke-static {v2}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->isEmui(Ljava/util/Properties;)Z
move-result v3
if-eqz v3, :cond_2b
.line 1427
const-string v0, "Emui"
goto :goto_21
.line 1429
:cond_2b
invoke-static {v2}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getYunOSVersion(Ljava/util/Properties;)Ljava/lang/String;
move-result-object v2
invoke-static {v2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v2
if-nez v2, :cond_21
.line 1430
const-string v0, "YunOS"
goto :goto_21
.line 1434
:cond_38
const-string v0, "MIUI"
:try_end_3a
.catch Ljava/lang/Throwable; {:try_start_d .. :try_end_3a} :catch_3b
goto :goto_21
.line 1436
:catch_3b
move-exception v0
move-object v0, v1
.line 1437
goto :goto_21
:cond_3e
move-object v0, v1
goto :goto_21
.end method
.method public static getSubOSVersion(Landroid/content/Context;)Ljava/lang/String;
.registers 5
.prologue
const/4 v1, 0x0
.line 1454
.line 1455
const-string v0, "header_sub_os_version"
invoke-static {v0}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_3d
.line 1456
invoke-static {}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getBuildProp()Ljava/util/Properties;
move-result-object v2
.line 1458
:try_start_d
const-string v0, "ro.miui.ui.version.name"
invoke-virtual {v2, v0}, Ljava/util/Properties;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 1459
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v3
if-eqz v3, :cond_23
.line 1460
invoke-static {}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->isFlyMe()Z
:try_end_1c
.catch Ljava/lang/Throwable; {:try_start_d .. :try_end_1c} :catch_34
move-result v3
if-eqz v3, :cond_24
.line 1462
:try_start_1f
invoke-static {v2}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getFlymeVersion(Ljava/util/Properties;)Ljava/lang/String;
:try_end_22
.catch Ljava/lang/Throwable; {:try_start_1f .. :try_end_22} :catch_37
move-result-object v0
.line 1483
:cond_23
:goto_23
return-object v0
.line 1465
:cond_24
:try_start_24
invoke-static {v2}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->isEmui(Ljava/util/Properties;)Z
:try_end_27
.catch Ljava/lang/Throwable; {:try_start_24 .. :try_end_27} :catch_34
move-result v1
if-eqz v1, :cond_2f
.line 1467
:try_start_2a
invoke-static {v2}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getEmuiVersion(Ljava/util/Properties;)Ljava/lang/String;
:try_end_2d
.catch Ljava/lang/Throwable; {:try_start_2a .. :try_end_2d} :catch_39
move-result-object v0
goto :goto_23
.line 1473
:cond_2f
:try_start_2f
invoke-static {v2}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getYunOSVersion(Ljava/util/Properties;)Ljava/lang/String;
:try_end_32
.catch Ljava/lang/Throwable; {:try_start_2f .. :try_end_32} :catch_3b
move-result-object v0
goto :goto_23
.line 1478
:catch_34
move-exception v0
move-object v0, v1
.line 1479
goto :goto_23
.line 1463
:catch_37
move-exception v1
goto :goto_23
.line 1468
:catch_39
move-exception v1
goto :goto_23
.line 1474
:catch_3b
move-exception v1
goto :goto_23
:cond_3d
move-object v0, v1
goto :goto_23
.end method
.method public static getTimeZone(Landroid/content/Context;)I
.registers 5
.prologue
const/16 v0, 0x8
.line 709
if-nez p0, :cond_5
.line 723
:cond_4
:goto_4
return v0
.line 712
:cond_5
const-string v1, "header_timezone"
invoke-static {v1}, Lcom/umeng/commonsdk/config/FieldManagerEx;->allow(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_4
.line 714
:try_start_d
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getLocale(Landroid/content/Context;)Ljava/util/Locale;
move-result-object v1
.line 715
invoke-static {v1}, Ljava/util/Calendar;->getInstance(Ljava/util/Locale;)Ljava/util/Calendar;
move-result-object v1
.line 716
if-eqz v1, :cond_4
.line 717
invoke-virtual {v1}, Ljava/util/Calendar;->getTimeZone()Ljava/util/TimeZone;
move-result-object v1
invoke-virtual {v1}, Ljava/util/TimeZone;->getRawOffset()I
move-result v1
const v2, 0x36ee80
div-int v0, v1, v2
:try_end_24
.catch Ljava/lang/Throwable; {:try_start_d .. :try_end_24} :catch_25
goto :goto_4
.line 719
:catch_25
move-exception v1
.line 720
sget-object v2, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->LOG_TAG:Ljava/lang/String;
const-string v3, "error in getTimeZone"
invoke-static {v2, v3, v1}, Lcom/umeng/commonsdk/statistics/common/MLog;->i(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
goto :goto_4
.end method
.method private static getYunOSVersion(Ljava/util/Properties;)Ljava/lang/String;
.registers 3
.prologue
.line 1493
const-string v0, "ro.yunos.version"
invoke-virtual {p0, v0}, Ljava/util/Properties;->getProperty(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 1494
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-nez v1, :cond_d
.line 1498
:goto_c
return-object v0
:cond_d
const/4 v0, 0x0
goto :goto_c
.end method
.method public static isChineseAera(Landroid/content/Context;)Z
.registers 5
.prologue
const/4 v1, 0x1
const/4 v0, 0x0
.line 742
if-nez p0, :cond_5
.line 773
:cond_4
:goto_4
return v0
.line 747
:cond_5
const-string v2, "country"
const-string v3, ""
invoke-static {p0, v2, v3}, Lcom/umeng/commonsdk/framework/UMEnvelopeBuild;->imprintProperty(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
.line 748
invoke-static {v2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v3
if-nez v3, :cond_1d
.line 749
const-string v3, "cn"
invoke-virtual {v2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_4
move v0, v1
.line 750
goto :goto_4
.line 755
:cond_1d
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getImsi(Landroid/content/Context;)Ljava/lang/String;
move-result-object v2
if-nez v2, :cond_39
.line 756
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getLocaleInfo(Landroid/content/Context;)[Ljava/lang/String;
move-result-object v2
aget-object v2, v2, v0
.line 757
invoke-static {v2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v3
if-nez v3, :cond_4
const-string v3, "cn"
invoke-virtual {v2, v3}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v2
if-eqz v2, :cond_4
move v0, v1
.line 758
goto :goto_4
.line 761
:cond_39
invoke-virtual {p0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v2
invoke-virtual {v2}, Landroid/content/res/Resources;->getConfiguration()Landroid/content/res/Configuration;
move-result-object v2
iget v2, v2, Landroid/content/res/Configuration;->mcc:I
.line 762
const/16 v3, 0x1cc
if-eq v2, v3, :cond_4b
const/16 v3, 0x1cd
if-ne v2, v3, :cond_4d
:cond_4b
move v0, v1
.line 763
goto :goto_4
.line 764
:cond_4d
if-nez v2, :cond_4
.line 765
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->getLocaleInfo(Landroid/content/Context;)[Ljava/lang/String;
move-result-object v2
aget-object v2, v2, v0
.line 766
invoke-static {v2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v3
if-nez v3, :cond_4
const-string v3, "cn"
invoke-virtual {v2, v3}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
move-result v2
if-eqz v2, :cond_4
move v0, v1
.line 767
goto :goto_4
.end method
.method private static isEmui(Ljava/util/Properties;)Z
.registers 4
.prologue
const/4 v0, 0x0
.line 1581
:try_start_1
const-string v1, "ro.build.hw_emui_api_level"
const/4 v2, 0x0
invoke-virtual {p0, v1, v2}, Ljava/util/Properties;->getProperty(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
:try_end_7
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_7} :catch_c
move-result-object v1
.line 1582
if-eqz v1, :cond_b
.line 1583
const/4 v0, 0x1
.line 1588
:cond_b
:goto_b
return v0
.line 1585
:catch_c
move-exception v1
goto :goto_b
.end method
.method private static isFlyMe()Z
.registers 4
.prologue
const/4 v0, 0x0
.line 1566
:try_start_1
const-class v1, Landroid/os/Build;
const-string v2, "hasSmartBar"
const/4 v3, 0x0
new-array v3, v3, [Ljava/lang/Class;
invoke-virtual {v1, v2, v3}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
:try_end_b
.catch Ljava/lang/Throwable; {:try_start_1 .. :try_end_b} :catch_d
.line 1570
const/4 v0, 0x1
:goto_c
return v0
.line 1567
:catch_d
move-exception v1
goto :goto_c
.end method
.method public static isOnline(Landroid/content/Context;)Z
.registers 3
.prologue
const/4 v1, 0x0
.line 684
if-nez p0, :cond_5
move v0, v1
.line 698
:goto_4
return v0
.line 688
:cond_5
:try_start_5
const-string v0, "android.permission.ACCESS_NETWORK_STATE"
invoke-static {p0, v0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfigEx;->checkPermission(Landroid/content/Context;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_23
.line 689
const-string v0, "connectivity"
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/net/ConnectivityManager;
.line 690
if-eqz v0, :cond_23
.line 691
invoke-virtual {v0}, Landroid/net/ConnectivityManager;->getActiveNetworkInfo()Landroid/net/NetworkInfo;
move-result-object v0
.line 692
if-eqz v0, :cond_23
.line 693
invoke-virtual {v0}, Landroid/net/NetworkInfo;->isConnectedOrConnecting()Z
:try_end_20
.catch Ljava/lang/Throwable; {:try_start_5 .. :try_end_20} :catch_22
move-result v0
goto :goto_4
.line 696
:catch_22
move-exception v0
:cond_23
move v0, v1
.line 698
goto :goto_4
.end method
.method public static isWiFiAvailable(Landroid/content/Context;)Z
.registers 4
.prologue
const/4 v0, 0x0
.line 667
if-nez p0, :cond_4
.line 670
:goto_3
return v0
:cond_4
const-string v1, "Wi-Fi"
invoke-static {p0}, Lcom/umeng/commonsdk/statistics/common/DeviceConfig;->getNetworkAccessMode(Landroid/content/Context;)[Ljava/lang/String;
move-result-object v2
aget-object v0, v2, v0
invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
goto :goto_3
.end method
.method private static reaMac(Ljava/lang/String;)Ljava/lang/String;
.registers 5
.prologue
const/4 v0, 0x0
.line 315
.line 317
:try_start_1
new-instance v3, Ljava/io/FileReader;
invoke-direct {v3, p0}, Ljava/io/FileReader;-><init>(Ljava/lang/String;)V
:try_end_6
.catch Ljava/lang/Throwable; {:try_start_1 .. :try_end_6} :catch_2b
.line 319
if-eqz v3, :cond_1d
.line 321
:try_start_8
new-instance v2, Ljava/io/BufferedReader;
const/16 v1, 0x400
invoke-direct {v2, v3, v1}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;I)V
:try_end_f
.catchall {:try_start_8 .. :try_end_f} :catchall_1e
.line 322
:try_start_f
invoke-virtual {v2}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String;
:try_end_12
.catchall {:try_start_f .. :try_end_12} :catchall_35
move-result-object v0
.line 324
if-eqz v3, :cond_18
.line 326
:try_start_15
invoke-virtual {v3}, Ljava/io/FileReader;->close()V
:try_end_18
.catch Ljava/lang/Throwable; {:try_start_15 .. :try_end_18} :catch_2d
.line 331
:cond_18
:goto_18
if-eqz v2, :cond_1d
.line 333
:try_start_1a
invoke-virtual {v2}, Ljava/io/BufferedReader;->close()V
:try_end_1d
.catch Ljava/lang/Throwable; {:try_start_1a .. :try_end_1d} :catch_2f
.line 342
:cond_1d
:goto_1d
return-object v0
.line 324
:catchall_1e
move-exception v1
move-object v2, v0
:goto_20
if-eqz v3, :cond_25
.line 326
:try_start_22
invoke-virtual {v3}, Ljava/io/FileReader;->close()V
:try_end_25
.catch Ljava/lang/Throwable; {:try_start_22 .. :try_end_25} :catch_31
.line 331
:cond_25
:goto_25
if-eqz v2, :cond_2a
.line 333
:try_start_27
invoke-virtual {v2}, Ljava/io/BufferedReader;->close()V
:try_end_2a
.catch Ljava/lang/Throwable; {:try_start_27 .. :try_end_2a} :catch_33
.line 336
:cond_2a
:goto_2a
:try_start_2a
throw v1
:try_end_2b
.catch Ljava/lang/Throwable; {:try_start_2a .. :try_end_2b} :catch_2b
.line 340
:catch_2b
move-exception v1
goto :goto_1d
.line 327
:catch_2d
move-exception v1
goto :goto_18
.line 334
:catch_2f
move-exception v1
goto :goto_1d
.line 327
:catch_31
move-exception v3
goto :goto_25
.line 334
:catch_33
move-exception v2
goto :goto_2a
.line 324
:catchall_35
move-exception v1
goto :goto_20
.end method
.method private static reflectMetrics(Ljava/lang/Object;Ljava/lang/String;)I
.registers 4
.prologue
.line 963
:try_start_0
const-class v0, Landroid/util/DisplayMetrics;
invoke-virtual {v0, p1}, Ljava/lang/Class;->getDeclaredField(Ljava/lang/String;)Ljava/lang/reflect/Field;
move-result-object v0
.line 964
const/4 v1, 0x1
invoke-virtual {v0, v1}, Ljava/lang/reflect/Field;->setAccessible(Z)V
.line 965
invoke-virtual {v0, p0}, Ljava/lang/reflect/Field;->getInt(Ljava/lang/Object;)I
:try_end_d
.catch Ljava/lang/Throwable; {:try_start_0 .. :try_end_d} :catch_f
move-result v0
.line 969
:goto_e
return v0
.line 966
:catch_f
move-exception v0
.line 969
const/4 v0, -0x1
goto :goto_e
.end method