j.smali
.class Lcom/xiaomi/b/c/j;
.super Ljava/lang/Object;
# direct methods
.method public static a(Landroid/content/Context;)Landroid/net/DhcpInfo;
.registers 6
const/4 v1, 0x0
if-nez p0, :cond_4
:cond_3
:goto_3
return-object v1
:cond_4
const-string/jumbo 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_3
invoke-virtual {v0}, Landroid/net/wifi/WifiManager;->isWifiEnabled()Z
move-result v2
if-eqz v2, :cond_3
:try_start_15
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v2
const-string/jumbo v3, "android.permission.ACCESS_WIFI_STATE"
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v4
invoke-virtual {v2, v3, v4}, Landroid/content/pm/PackageManager;->checkPermission(Ljava/lang/String;Ljava/lang/String;)I
move-result v2
if-nez v2, :cond_2f
invoke-virtual {v0}, Landroid/net/wifi/WifiManager;->getDhcpInfo()Landroid/net/DhcpInfo;
:try_end_29
.catch Ljava/lang/Exception; {:try_start_15 .. :try_end_29} :catch_2c
move-result-object v0
:goto_2a
move-object v1, v0
goto :goto_3
:catch_2c
move-exception v0
move-object v0, v1
goto :goto_2a
:cond_2f
move-object v0, v1
goto :goto_2a
.end method
.method public static a(Landroid/content/Context;I)Ljava/lang/String;
.registers 7
const/4 v1, 0x0
:try_start_1
const-string/jumbo 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_12
invoke-virtual {v0}, Landroid/net/wifi/WifiManager;->isWifiEnabled()Z
:try_end_f
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_f} :catch_48
move-result v2
if-nez v2, :cond_13
:cond_12
:goto_12
return-object v1
:cond_13
:try_start_13
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v2
const-string/jumbo v3, "android.permission.ACCESS_WIFI_STATE"
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v4
invoke-virtual {v2, v3, v4}, Landroid/content/pm/PackageManager;->checkPermission(Ljava/lang/String;Ljava/lang/String;)I
move-result v2
if-nez v2, :cond_4a
invoke-virtual {v0}, Landroid/net/wifi/WifiManager;->getConnectionInfo()Landroid/net/wifi/WifiInfo;
:try_end_27
.catch Ljava/lang/Exception; {:try_start_13 .. :try_end_27} :catch_31
move-result-object v0
:goto_28
if-eqz v0, :cond_12
if-nez p1, :cond_34
:try_start_2c
invoke-virtual {v0}, Landroid/net/wifi/WifiInfo;->getMacAddress()Ljava/lang/String;
move-result-object v1
goto :goto_12
:catch_31
move-exception v0
move-object v0, v1
goto :goto_28
:cond_34
const/4 v2, 0x1
if-ne p1, v2, :cond_3c
invoke-virtual {v0}, Landroid/net/wifi/WifiInfo;->getBSSID()Ljava/lang/String;
move-result-object v1
goto :goto_12
:cond_3c
const/4 v2, 0x2
if-ne p1, v2, :cond_12
invoke-virtual {v0}, Landroid/net/wifi/WifiInfo;->getSSID()Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Lcom/xiaomi/b/c/j;->a(Ljava/lang/String;)Ljava/lang/String;
:try_end_46
.catch Ljava/lang/Exception; {:try_start_2c .. :try_end_46} :catch_48
move-result-object v1
goto :goto_12
:catch_48
move-exception v0
goto :goto_12
:cond_4a
move-object v0, v1
goto :goto_28
.end method
.method private static a(Ljava/lang/String;)Ljava/lang/String;
.registers 3
const-string/jumbo v0, "\""
invoke-virtual {p0, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_1d
const-string/jumbo v0, "\""
invoke-virtual {p0, v0}, Ljava/lang/String;->endsWith(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_1d
const/4 v0, 0x1
invoke-virtual {p0}, Ljava/lang/String;->length()I
move-result v1
add-int/lit8 v1, v1, -0x1
invoke-virtual {p0, v0, v1}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object p0
:cond_1d
return-object p0
.end method
.method public static a(I)Ljava/net/InetAddress;
.registers 4
const/4 v0, 0x4
new-array v0, v0, [B
const/4 v1, 0x0
and-int/lit16 v2, p0, 0xff
int-to-byte v2, v2
aput-byte v2, v0, v1
const/4 v1, 0x1
shr-int/lit8 v2, p0, 0x8
and-int/lit16 v2, v2, 0xff
int-to-byte v2, v2
aput-byte v2, v0, v1
const/4 v1, 0x2
shr-int/lit8 v2, p0, 0x10
and-int/lit16 v2, v2, 0xff
int-to-byte v2, v2
aput-byte v2, v0, v1
const/4 v1, 0x3
shr-int/lit8 v2, p0, 0x18
and-int/lit16 v2, v2, 0xff
int-to-byte v2, v2
aput-byte v2, v0, v1
:try_start_21
invoke-static {v0}, Ljava/net/InetAddress;->getByAddress([B)Ljava/net/InetAddress;
:try_end_24
.catch Ljava/net/UnknownHostException; {:try_start_21 .. :try_end_24} :catch_26
move-result-object v0
return-object v0
:catch_26
move-exception v0
new-instance v0, Ljava/lang/AssertionError;
invoke-direct {v0}, Ljava/lang/AssertionError;-><init>()V
throw v0
.end method
.method public static a(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;)V
.registers 5
const-string/jumbo v0, "devicediscover"
const/4 v1, 0x0
invoke-virtual {p0, v0, v1}, Landroid/content/Context;->getSharedPreferences(Ljava/lang/String;I)Landroid/content/SharedPreferences;
move-result-object v0
invoke-interface {v0}, Landroid/content/SharedPreferences;->edit()Landroid/content/SharedPreferences$Editor;
move-result-object v0
invoke-interface {v0, p1, p2}, Landroid/content/SharedPreferences$Editor;->putString(Ljava/lang/String;Ljava/lang/String;)Landroid/content/SharedPreferences$Editor;
invoke-interface {v0}, Landroid/content/SharedPreferences$Editor;->commit()Z
return-void
.end method
.method public static b(Landroid/content/Context;)Ljava/lang/String;
.registers 3
const/4 v0, 0x0
:try_start_1
invoke-static {p0}, Lcom/xiaomi/b/c/j;->a(Landroid/content/Context;)Landroid/net/DhcpInfo;
move-result-object v1
if-nez v1, :cond_8
:goto_7
return-object v0
:cond_8
iget v1, v1, Landroid/net/DhcpInfo;->gateway:I
invoke-static {v1}, Lcom/xiaomi/b/c/j;->a(I)Ljava/net/InetAddress;
move-result-object v1
invoke-virtual {v1}, Ljava/net/InetAddress;->getHostAddress()Ljava/lang/String;
:try_end_11
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_11} :catch_13
move-result-object v0
goto :goto_7
:catch_13
move-exception v1
goto :goto_7
.end method
.method public static b(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
.registers 5
const-string/jumbo v0, "devicediscover"
const/4 v1, 0x0
invoke-virtual {p0, v0, v1}, Landroid/content/Context;->getSharedPreferences(Ljava/lang/String;I)Landroid/content/SharedPreferences;
move-result-object v0
invoke-interface {v0, p1, p2}, Landroid/content/SharedPreferences;->getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public static c(Landroid/content/Context;)Ljava/lang/String;
.registers 3
const/4 v0, 0x0
:try_start_1
invoke-static {p0}, Lcom/xiaomi/b/c/j;->a(Landroid/content/Context;)Landroid/net/DhcpInfo;
move-result-object v1
if-nez v1, :cond_8
:goto_7
return-object v0
:cond_8
iget v1, v1, Landroid/net/DhcpInfo;->serverAddress:I
invoke-static {v1}, Lcom/xiaomi/b/c/j;->a(I)Ljava/net/InetAddress;
move-result-object v1
invoke-virtual {v1}, Ljava/net/InetAddress;->getHostAddress()Ljava/lang/String;
:try_end_11
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_11} :catch_13
move-result-object v0
goto :goto_7
:catch_13
move-exception v1
goto :goto_7
.end method
.method public static d(Landroid/content/Context;)Ljava/lang/String;
.registers 7
const/4 v0, 0x0
invoke-static {p0, v0}, Lcom/xiaomi/b/c/j;->a(Landroid/content/Context;I)Ljava/lang/String;
move-result-object v0
if-eqz v0, :cond_16
invoke-virtual {v0}, Ljava/lang/String;->isEmpty()Z
move-result v1
if-nez v1, :cond_16
const-string/jumbo v1, "02:00:00:00:00:00"
invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_39
:cond_16
const/4 v2, 0x0
const/16 v1, 0x400
:try_start_19
new-array v3, v1, [C
new-instance v1, Ljava/io/FileReader;
const-string/jumbo v4, "/sys/class/net/wlan0/address"
invoke-direct {v1, v4}, Ljava/io/FileReader;-><init>(Ljava/lang/String;)V
:try_end_23
.catch Ljava/io/FileNotFoundException; {:try_start_19 .. :try_end_23} :catch_3a
.catch Ljava/lang/Exception; {:try_start_19 .. :try_end_23} :catch_44
.catchall {:try_start_19 .. :try_end_23} :catchall_4e
const/4 v2, 0x0
const/16 v4, 0x400
:try_start_26
invoke-virtual {v1, v3, v2, v4}, Ljava/io/FileReader;->read([CII)I
move-result v2
new-instance v4, Ljava/lang/String;
const/4 v5, 0x0
invoke-direct {v4, v3, v5, v2}, Ljava/lang/String;-><init>([CII)V
invoke-virtual {v4}, Ljava/lang/String;->trim()Ljava/lang/String;
:try_end_33
.catch Ljava/io/FileNotFoundException; {:try_start_26 .. :try_end_33} :catch_5e
.catch Ljava/lang/Exception; {:try_start_26 .. :try_end_33} :catch_5c
.catchall {:try_start_26 .. :try_end_33} :catchall_5a
move-result-object v0
if-eqz v1, :cond_39
:try_start_36
invoke-virtual {v1}, Ljava/io/FileReader;->close()V
:try_end_39
.catch Ljava/lang/Exception; {:try_start_36 .. :try_end_39} :catch_56
:cond_39
:goto_39
return-object v0
:catch_3a
move-exception v1
move-object v1, v2
:goto_3c
if-eqz v1, :cond_39
:try_start_3e
invoke-virtual {v1}, Ljava/io/FileReader;->close()V
:try_end_41
.catch Ljava/lang/Exception; {:try_start_3e .. :try_end_41} :catch_42
goto :goto_39
:catch_42
move-exception v1
goto :goto_39
:catch_44
move-exception v1
move-object v1, v2
:goto_46
if-eqz v1, :cond_39
:try_start_48
invoke-virtual {v1}, Ljava/io/FileReader;->close()V
:try_end_4b
.catch Ljava/lang/Exception; {:try_start_48 .. :try_end_4b} :catch_4c
goto :goto_39
:catch_4c
move-exception v1
goto :goto_39
:catchall_4e
move-exception v0
move-object v1, v2
:goto_50
if-eqz v1, :cond_55
:try_start_52
invoke-virtual {v1}, Ljava/io/FileReader;->close()V
:try_end_55
.catch Ljava/lang/Exception; {:try_start_52 .. :try_end_55} :catch_58
:cond_55
:goto_55
throw v0
:catch_56
move-exception v1
goto :goto_39
:catch_58
move-exception v1
goto :goto_55
:catchall_5a
move-exception v0
goto :goto_50
:catch_5c
move-exception v2
goto :goto_46
:catch_5e
move-exception v2
goto :goto_3c
.end method