c.smali
.class public Lcom/meizu/cloud/pushsdk/base/c;
.super Ljava/lang/Object;
# static fields
.field private static a:Ljava/lang/String;
.field private static b:Ljava/lang/String;
# direct methods
.method static constructor <clinit>()V
.registers 1
const-string v0, ""
sput-object v0, Lcom/meizu/cloud/pushsdk/base/c;->a:Ljava/lang/String;
const-string v0, ""
sput-object v0, Lcom/meizu/cloud/pushsdk/base/c;->b:Ljava/lang/String;
return-void
.end method
.method public static a(Landroid/content/Context;)Ljava/lang/String;
.registers 2
sget-object v0, Lcom/meizu/cloud/pushsdk/base/c;->b:Ljava/lang/String;
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-nez v0, :cond_b
sget-object v0, Lcom/meizu/cloud/pushsdk/base/c;->b:Ljava/lang/String;
:goto_a
return-object v0
:cond_b
invoke-static {}, Lcom/meizu/cloud/pushsdk/base/c;->a()Z
move-result v0
if-nez v0, :cond_1a
invoke-static {p0}, Lcom/meizu/cloud/pushsdk/base/c;->c(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
sput-object v0, Lcom/meizu/cloud/pushsdk/base/c;->b:Ljava/lang/String;
:goto_17
sget-object v0, Lcom/meizu/cloud/pushsdk/base/c;->b:Ljava/lang/String;
goto :goto_a
:cond_1a
invoke-static {p0}, Lcom/meizu/cloud/pushsdk/base/c;->d(Landroid/content/Context;)Ljava/lang/String;
move-result-object v0
sput-object v0, Lcom/meizu/cloud/pushsdk/base/c;->b:Ljava/lang/String;
goto :goto_17
.end method
.method private static a(Ljava/lang/String;)Ljava/lang/String;
.registers 5
const/4 v0, 0x0
:try_start_1
new-instance v1, Ljava/io/FileInputStream;
new-instance v2, Ljava/lang/StringBuilder;
const-string v3, "/sys/class/net/"
invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
const-string v3, "/address"
invoke-virtual {v2, v3}, 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-direct {v1, v2}, Ljava/io/FileInputStream;-><init>(Ljava/lang/String;)V
new-instance v2, Ljava/util/Scanner;
invoke-direct {v2, v1}, Ljava/util/Scanner;-><init>(Ljava/io/InputStream;)V
invoke-virtual {v2}, Ljava/util/Scanner;->hasNextLine()Z
move-result v3
if-eqz v3, :cond_2e
invoke-virtual {v2}, Ljava/util/Scanner;->nextLine()Ljava/lang/String;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/String;->trim()Ljava/lang/String;
move-result-object v0
:cond_2e
invoke-virtual {v1}, Ljava/io/InputStream;->close()V
:try_end_31
.catch Ljava/io/FileNotFoundException; {:try_start_1 .. :try_end_31} :catch_32
.catch Ljava/io/IOException; {:try_start_1 .. :try_end_31} :catch_3b
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_31} :catch_44
:goto_31
return-object v0
:catch_32
move-exception v1
const-string v1, "DeviceUtils"
const-string v2, "getMacAddressWithIfName File not found Exception"
invoke-static {v1, v2}, Lcom/baidu/techain/z/a;->c(Ljava/lang/String;Ljava/lang/String;)V
goto :goto_31
:catch_3b
move-exception v1
const-string v1, "DeviceUtils"
const-string v2, "getMacAddressWithIfName IOException"
invoke-static {v1, v2}, Lcom/baidu/techain/z/a;->c(Ljava/lang/String;Ljava/lang/String;)V
goto :goto_31
:catch_44
move-exception v1
const-string v1, "DeviceUtils"
const-string v2, "getMacAddressWithIfName Exception "
invoke-static {v1, v2}, Lcom/baidu/techain/z/a;->c(Ljava/lang/String;Ljava/lang/String;)V
goto :goto_31
.end method
.method public static a()Z
.registers 4
const-string v0, "ro.target.product"
invoke-static {v0}, Lcom/meizu/cloud/pushsdk/base/j;->a(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-nez v1, :cond_22
const-string v1, "DeviceUtils"
new-instance v2, Ljava/lang/StringBuilder;
const-string v3, "current product is "
invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v2, 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
invoke-static {v1, v0}, Lcom/baidu/techain/z/a;->a(Ljava/lang/String;Ljava/lang/String;)V
const/4 v0, 0x0
:goto_21
return v0
:cond_22
const-string v0, "DeviceUtils"
const-string v1, "current product is phone"
invoke-static {v0, v1}, Lcom/baidu/techain/z/a;->a(Ljava/lang/String;Ljava/lang/String;)V
const/4 v0, 0x1
goto :goto_21
.end method
.method public static b(Landroid/content/Context;)Ljava/lang/String;
.registers 5
const/4 v1, 0x0
sget-object v0, Lcom/meizu/cloud/pushsdk/base/c;->a:Ljava/lang/String;
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-nez v0, :cond_c
sget-object v0, Lcom/meizu/cloud/pushsdk/base/c;->a:Ljava/lang/String;
:goto_b
return-object v0
:cond_c
:try_start_c
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0x17
if-lt v0, v2, :cond_57
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;
if-eqz v0, :cond_75
invoke-virtual {v0}, Landroid/net/ConnectivityManager;->getActiveNetworkInfo()Landroid/net/NetworkInfo;
move-result-object v0
if-eqz v0, :cond_43
invoke-virtual {v0}, Landroid/net/NetworkInfo;->getType()I
move-result v2
const/4 v3, 0x1
if-ne v2, v3, :cond_34
const-string v0, "wlan0"
invoke-static {v0}, Lcom/meizu/cloud/pushsdk/base/c;->a(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
:cond_2f
:goto_2f
sput-object v1, Lcom/meizu/cloud/pushsdk/base/c;->a:Ljava/lang/String;
:try_end_31
.catch Ljava/lang/Exception; {:try_start_c .. :try_end_31} :catch_6c
:goto_31
sget-object v0, Lcom/meizu/cloud/pushsdk/base/c;->a:Ljava/lang/String;
goto :goto_b
:cond_34
:try_start_34
invoke-virtual {v0}, Landroid/net/NetworkInfo;->getType()I
move-result v0
const/16 v2, 0x9
if-ne v0, v2, :cond_75
const-string v0, "eth0"
invoke-static {v0}, Lcom/meizu/cloud/pushsdk/base/c;->a(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
goto :goto_2f
:cond_43
const-string v0, "wlan0"
invoke-static {v0}, Lcom/meizu/cloud/pushsdk/base/c;->a(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_55
const-string v0, "eth0"
invoke-static {v0}, Lcom/meizu/cloud/pushsdk/base/c;->a(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
:cond_55
:goto_55
move-object v1, v0
goto :goto_2f
:cond_57
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;
if-eqz v0, :cond_2f
invoke-virtual {v0}, Landroid/net/wifi/WifiManager;->getConnectionInfo()Landroid/net/wifi/WifiInfo;
move-result-object v0
if-eqz v0, :cond_2f
invoke-virtual {v0}, Landroid/net/wifi/WifiInfo;->getMacAddress()Ljava/lang/String;
:try_end_6a
.catch Ljava/lang/Exception; {:try_start_34 .. :try_end_6a} :catch_6c
move-result-object v1
goto :goto_2f
:catch_6c
move-exception v0
const-string v0, "DeviceUtils"
const-string v1, "get address exception "
invoke-static {v0, v1}, Lcom/baidu/techain/z/a;->c(Ljava/lang/String;Ljava/lang/String;)V
goto :goto_31
:cond_75
move-object v0, v1
goto :goto_55
.end method
.method private static c(Landroid/content/Context;)Ljava/lang/String;
.registers 7
const/4 v0, 0x0
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
sget-object v2, Landroid/os/Build;->SERIAL:Ljava/lang/String;
const-string v3, "DeviceUtils"
new-instance v4, Ljava/lang/StringBuilder;
const-string v5, "device serial "
invoke-direct {v4, v5}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v4, v2}, 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
invoke-static {v3, v4}, Lcom/baidu/techain/z/a;->a(Ljava/lang/String;Ljava/lang/String;)V
invoke-static {v2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v3
if-nez v3, :cond_56
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-static {p0}, Lcom/meizu/cloud/pushsdk/base/c;->b(Landroid/content/Context;)Ljava/lang/String;
move-result-object v2
const-string v3, "DeviceUtils"
new-instance v4, Ljava/lang/StringBuilder;
const-string v5, "mac address "
invoke-direct {v4, v5}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v4, v2}, 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
invoke-static {v3, v4}, Lcom/baidu/techain/z/a;->c(Ljava/lang/String;Ljava/lang/String;)V
invoke-static {v2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v3
if-nez v3, :cond_56
const-string v0, ":"
const-string v3, ""
invoke-virtual {v2, v0, v3}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/String;->toUpperCase()Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
:cond_56
return-object v0
.end method
.method private static d(Landroid/content/Context;)Ljava/lang/String;
.registers 5
const/4 v3, 0x0
const-string v0, "android.telephony.MzTelephonyManager"
invoke-static {v0}, Lcom/meizu/cloud/pushsdk/base/a/a;->a(Ljava/lang/String;)Lcom/meizu/cloud/pushsdk/base/a/a;
move-result-object v0
const-string v1, "getDeviceId"
new-array v2, v3, [Ljava/lang/Class;
invoke-virtual {v0, v1, v2}, Lcom/meizu/cloud/pushsdk/base/a/a;->a(Ljava/lang/String;[Ljava/lang/Class;)Lcom/meizu/cloud/pushsdk/base/a/c;
move-result-object v0
new-array v1, v3, [Ljava/lang/Object;
invoke-virtual {v0, v1}, Lcom/meizu/cloud/pushsdk/base/a/c;->a([Ljava/lang/Object;)Lcom/meizu/cloud/pushsdk/base/a/d;
move-result-object v0
iget-boolean v1, v0, Lcom/meizu/cloud/pushsdk/base/a/d;->a:Z
if-eqz v1, :cond_1e
iget-object v0, v0, Lcom/meizu/cloud/pushsdk/base/a/d;->b:Ljava/lang/Object;
check-cast v0, Ljava/lang/String;
:goto_1d
return-object v0
:cond_1e
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;
invoke-virtual {v0}, Landroid/telephony/TelephonyManager;->getDeviceId()Ljava/lang/String;
move-result-object v0
goto :goto_1d
.end method