RomProperty.smali

.class public final Lsg/bigo/svcapi/util/RomProperty;
.super Ljava/lang/Object;
.source "SourceFile"


# static fields
.field private static final EMUI3:Ljava/lang/String; = "EmotionUI_3.0"

.field private static final EMUI_PROPERTY:Ljava/lang/String; = "ro.build.version.emui"

.field private static final EMUI_VERSION_PREFIX:Ljava/lang/String; = "EmotionUI_"

.field private static final MIUI_PROPERTY:Ljava/lang/String; = "ro.miui.ui.version.name"

.field private static sFlymeFlag:I

.field private static sIsEMUI:Z

.field private static sIsEMUIv2p:Z

.field private static sIsEMUIv3:Z

.field private static sIsMIUI:Z

.field private static sIsMIUIv5:Z

.field private static sIsMIUIv6:Z

.field private static sVersionEMUI:Ljava/lang/String;

.field private static sVersionMIUI:Ljava/lang/String;


# direct methods
.method static constructor <clinit>()V
    .registers 7

    .line 42
    invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J

    move-result-wide v0

    const-string v2, "ro.miui.ui.version.name"

    .line 44
    invoke-static {v2}, Lsg/bigo/svcapi/util/Utils;->getSystemProperty(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v2

    const/4 v3, 0x0

    const/4 v4, 0x1

    if-eqz v2, :cond_1a

    .line 45
    invoke-virtual {v2}, Ljava/lang/String;->trim()Ljava/lang/String;

    move-result-object v5

    invoke-virtual {v5}, Ljava/lang/String;->isEmpty()Z

    move-result v5

    if-nez v5, :cond_1a

    const/4 v5, 0x1

    goto :goto_1b

    :cond_1a
    const/4 v5, 0x0

    .line 46
    :goto_1b
    sput-boolean v5, Lsg/bigo/svcapi/util/RomProperty;->sIsMIUI:Z

    if-eqz v5, :cond_32

    .line 47
    sput-object v2, Lsg/bigo/svcapi/util/RomProperty;->sVersionMIUI:Ljava/lang/String;

    const-string v3, "V5"

    .line 48
    invoke-virtual {v3, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v3

    sput-boolean v3, Lsg/bigo/svcapi/util/RomProperty;->sIsMIUIv5:Z

    const-string v3, "V6"

    .line 49
    invoke-virtual {v3, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v2

    sput-boolean v2, Lsg/bigo/svcapi/util/RomProperty;->sIsMIUIv6:Z

    goto :goto_68

    :cond_32
    const-string v2, "ro.build.version.emui"

    .line 52
    invoke-static {v2}, Lsg/bigo/svcapi/util/Utils;->getSystemProperty(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v2

    if-eqz v2, :cond_68

    .line 53
    invoke-virtual {v2}, Ljava/lang/String;->trim()Ljava/lang/String;

    move-result-object v5

    invoke-virtual {v5}, Ljava/lang/String;->isEmpty()Z

    move-result v5

    if-nez v5, :cond_68

    .line 54
    sput-boolean v4, Lsg/bigo/svcapi/util/RomProperty;->sIsEMUI:Z

    .line 55
    sput-object v2, Lsg/bigo/svcapi/util/RomProperty;->sVersionEMUI:Ljava/lang/String;

    .line 56
    invoke-virtual {v2}, Ljava/lang/String;->length()I

    move-result v5

    const/16 v6, 0xa

    if-le v5, v6, :cond_68

    .line 57
    invoke-virtual {v2, v6}, Ljava/lang/String;->substring(I)Ljava/lang/String;

    move-result-object v5

    .line 59
    invoke-static {v5}, Lsg/bigo/svcapi/util/Utils;->getNextInt(Ljava/lang/String;)I

    move-result v5

    const/4 v6, 0x2

    if-lt v5, v6, :cond_5c

    const/4 v3, 0x1

    .line 61
    :cond_5c
    sput-boolean v3, Lsg/bigo/svcapi/util/RomProperty;->sIsEMUIv2p:Z

    if-eqz v3, :cond_68

    const-string v3, "EmotionUI_3.0"

    .line 62
    invoke-virtual {v3, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v2

    sput-boolean v2, Lsg/bigo/svcapi/util/RomProperty;->sIsEMUIv3:Z

    .line 68
    :cond_68
    :goto_68
    new-instance v2, Ljava/lang/StringBuilder;

    const-string v3, "[ROM property]isMIUI:"

    invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V

    sget-boolean v3, Lsg/bigo/svcapi/util/RomProperty;->sIsMIUI:Z

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;

    const-string v3, ",isMIUIv5:"

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    sget-boolean v3, Lsg/bigo/svcapi/util/RomProperty;->sIsMIUIv5:Z

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;

    const-string v3, ",isMIUIv6:"

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    sget-boolean v3, Lsg/bigo/svcapi/util/RomProperty;->sIsMIUIv6:Z

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;

    const-string v3, ",isEMUI:"

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    sget-boolean v3, Lsg/bigo/svcapi/util/RomProperty;->sIsEMUI:Z

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;

    const-string v3, ",sIsEMUIv2p:"

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    sget-boolean v3, Lsg/bigo/svcapi/util/RomProperty;->sIsEMUIv2p:Z

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;

    const-string v3, ",isEMUIv3:"

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    sget-boolean v3, Lsg/bigo/svcapi/util/RomProperty;->sIsEMUIv3:Z

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;

    const-string v3, ", cost:"

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    .line 70
    invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J

    move-result-wide v3

    sub-long/2addr v3, v0

    invoke-virtual {v2, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;

    invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    const-string v1, "RomProperty"

    .line 68
    invoke-static {v1, v0}, Lsg/bigo/log/Log;->i(Ljava/lang/String;Ljava/lang/String;)I

    const/4 v0, -0x1

    .line 130
    sput v0, Lsg/bigo/svcapi/util/RomProperty;->sFlymeFlag:I

    return-void
.end method

.method public constructor <init>()V
    .registers 1

    .line 19
    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    return-void
.end method

.method public static getEMUICommonVersion()Ljava/lang/String;
    .registers 4

    .line 114
    sget-object v0, Lsg/bigo/svcapi/util/RomProperty;->sVersionEMUI:Ljava/lang/String;

    invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_35

    sget-object v0, Lsg/bigo/svcapi/util/RomProperty;->sVersionEMUI:Ljava/lang/String;

    const-string v1, "EmotionUI_"

    invoke-virtual {v0, v1}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z

    move-result v0

    if-eqz v0, :cond_35

    sget-object v0, Lsg/bigo/svcapi/util/RomProperty;->sVersionEMUI:Ljava/lang/String;

    .line 115
    invoke-virtual {v0}, Ljava/lang/String;->length()I

    move-result v0

    const/16 v1, 0xc

    if-lt v0, v1, :cond_35

    .line 116
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    sget-object v2, Lsg/bigo/svcapi/util/RomProperty;->sVersionEMUI:Ljava/lang/String;

    const/4 v3, 0x0

    invoke-virtual {v2, v3, v1}, Ljava/lang/String;->substring(II)Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const-string v1, "X"

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    return-object v0

    :cond_35
    const/4 v0, 0x0

    return-object v0
.end method

.method public static getEMUIVersion()Ljava/lang/String;
    .registers 1

    .line 107
    sget-object v0, Lsg/bigo/svcapi/util/RomProperty;->sVersionEMUI:Ljava/lang/String;

    return-object v0
.end method

.method public static getMIUICommonVersion()Ljava/lang/String;
    .registers 2

    .line 122
    sget-object v0, Lsg/bigo/svcapi/util/RomProperty;->sVersionMIUI:Ljava/lang/String;

    invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_19

    .line 123
    new-instance v0, Ljava/lang/StringBuilder;

    const-string v1, "MIUI"

    invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V

    sget-object v1, Lsg/bigo/svcapi/util/RomProperty;->sVersionMIUI:Ljava/lang/String;

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    return-object v0

    :cond_19
    const/4 v0, 0x0

    return-object v0
.end method

.method public static getMIUIVersion()Ljava/lang/String;
    .registers 1

    .line 103
    sget-object v0, Lsg/bigo/svcapi/util/RomProperty;->sVersionMIUI:Ljava/lang/String;

    return-object v0
.end method

.method public static getRomName()Ljava/lang/String;
    .registers 2

    .line 206
    sget-boolean v0, Lsg/bigo/svcapi/util/RomProperty;->sIsMIUI:Z

    if-eqz v0, :cond_15

    .line 207
    new-instance v0, Ljava/lang/StringBuilder;

    const-string v1, "MIUI "

    invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V

    sget-object v1, Lsg/bigo/svcapi/util/RomProperty;->sVersionMIUI:Ljava/lang/String;

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    return-object v0

    .line 208
    :cond_15
    sget-boolean v0, Lsg/bigo/svcapi/util/RomProperty;->sIsEMUI:Z

    if-eqz v0, :cond_1c

    .line 209
    sget-object v0, Lsg/bigo/svcapi/util/RomProperty;->sVersionEMUI:Ljava/lang/String;

    return-object v0

    .line 210
    :cond_1c
    invoke-static {}, Lsg/bigo/svcapi/util/RomProperty;->isFlyme()Z

    move-result v0

    if-eqz v0, :cond_25

    const-string v0, "Flyme"

    return-object v0

    .line 213
    :cond_25
    sget-object v0, Landroid/os/Build;->DISPLAY:Ljava/lang/String;

    return-object v0
.end method

.method public static gotoAppDetailPage(Landroid/content/Context;)Z
    .registers 4

    if-eqz p0, :cond_29

    .line 178
    new-instance v0, Ljava/lang/StringBuilder;

    const-string v1, "package:"

    invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V

    invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;

    move-result-object v0

    .line 179
    new-instance v1, Landroid/content/Intent;

    const-string v2, "android.settings.APPLICATION_DETAILS_SETTINGS"

    invoke-direct {v1, v2, v0}, Landroid/content/Intent;-><init>(Ljava/lang/String;Landroid/net/Uri;)V

    const/high16 v0, 0x10000000

    .line 180
    invoke-virtual {v1, v0}, Landroid/content/Intent;->setFlags(I)Landroid/content/Intent;

    .line 182
    :try_start_24
    invoke-virtual {p0, v1}, Landroid/content/Context;->startActivity(Landroid/content/Intent;)V
    :try_end_27
    .catch Ljava/lang/Exception; {:try_start_24 .. :try_end_27} :catch_29

    const/4 p0, 0x1

    return p0

    :catch_29
    :cond_29
    const/4 p0, 0x0

    return p0
.end method

.method public static gotoMIUIAppAutoStart4V6(Landroid/content/Context;)Z
    .registers 4

    .line 192
    new-instance v0, Landroid/content/Intent;

    invoke-direct {v0}, Landroid/content/Intent;-><init>()V

    const/high16 v1, 0x10000000

    .line 193
    invoke-virtual {v0, v1}, Landroid/content/Intent;->setFlags(I)Landroid/content/Intent;

    const-string v1, "com.miui.securitycenter"

    const-string v2, "com.miui.permcenter.autostart.AutoStartManagementActivity"

    .line 194
    invoke-virtual {v0, v1, v2}, Landroid/content/Intent;->setClassName(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;

    .line 197
    :try_start_11
    invoke-virtual {p0, v0}, Landroid/content/Context;->startActivity(Landroid/content/Intent;)V
    :try_end_14
    .catch Ljava/lang/Exception; {:try_start_11 .. :try_end_14} :catch_16

    const/4 p0, 0x1

    return p0

    :catch_16
    const/4 p0, 0x0

    return p0
.end method

.method public static gotoMIUIAppPermissionsPage4V5(Landroid/content/Context;)Z
    .registers 4

    .line 163
    new-instance v0, Landroid/content/Intent;

    const-string v1, "miui.intent.action.APP_PERM_EDITOR"

    invoke-direct {v0, v1}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V

    const-string v1, "com.android.settings"

    const-string v2, "com.miui.securitycenter.permission.AppPermissionsEditor"

    .line 164
    invoke-virtual {v0, v1, v2}, Landroid/content/Intent;->setClassName(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;

    .line 166
    invoke-virtual {p0}, Landroid/content/Context;->getApplicationInfo()Landroid/content/pm/ApplicationInfo;

    move-result-object v1

    iget v1, v1, Landroid/content/pm/ApplicationInfo;->uid:I

    const-string v2, "extra_package_uid"

    invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;I)Landroid/content/Intent;

    .line 168
    :try_start_19
    invoke-virtual {p0, v0}, Landroid/content/Context;->startActivity(Landroid/content/Intent;)V
    :try_end_1c
    .catch Ljava/lang/Exception; {:try_start_19 .. :try_end_1c} :catch_1e

    const/4 p0, 0x1

    return p0

    :catch_1e
    const/4 p0, 0x0

    return p0
.end method

.method public static gotoMIUIAppPermissionsPage4V6(Landroid/content/Context;)Z
    .registers 4

    .line 148
    new-instance v0, Landroid/content/Intent;

    const-string v1, "miui.intent.action.APP_PERM_EDITOR"

    invoke-direct {v0, v1}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V

    const/high16 v1, 0x10000000

    .line 149
    invoke-virtual {v0, v1}, Landroid/content/Intent;->setFlags(I)Landroid/content/Intent;

    const-string v1, "com.miui.securitycenter"

    const-string v2, "com.miui.permcenter.permissions.AppPermissionsEditorActivity"

    .line 150
    invoke-virtual {v0, v1, v2}, Landroid/content/Intent;->setClassName(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;

    .line 152
    invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;

    move-result-object v1

    const-string v2, "extra_pkgname"

    invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;

    .line 154
    :try_start_1c
    invoke-virtual {p0, v0}, Landroid/content/Context;->startActivity(Landroid/content/Intent;)V
    :try_end_1f
    .catch Ljava/lang/Exception; {:try_start_1c .. :try_end_1f} :catch_21

    const/4 p0, 0x1

    return p0

    :catch_21
    const/4 p0, 0x0

    return p0
.end method

.method public static declared-synchronized init(Landroid/content/Context;)V
    .registers 1
    .annotation runtime Ljava/lang/Deprecated;
    .end annotation

    const-class p0, Lsg/bigo/svcapi/util/RomProperty;

    monitor-enter p0

    .line 76
    monitor-exit p0

    return-void
.end method

.method public static isEMUI()Z
    .registers 1

    .line 91
    sget-boolean v0, Lsg/bigo/svcapi/util/RomProperty;->sIsEMUI:Z

    return v0
.end method

.method public static isEMUIv2p()Z
    .registers 1

    .line 95
    sget-boolean v0, Lsg/bigo/svcapi/util/RomProperty;->sIsEMUIv2p:Z

    return v0
.end method

.method public static isEMUIv3()Z
    .registers 1

    .line 99
    sget-boolean v0, Lsg/bigo/svcapi/util/RomProperty;->sIsEMUIv3:Z

    return v0
.end method

.method private static isFlyme()Z
    .registers 5

    .line 133
    sget v0, Lsg/bigo/svcapi/util/RomProperty;->sFlymeFlag:I

    const/4 v1, 0x1

    const/4 v2, 0x0

    const/4 v3, -0x1

    if-ne v0, v3, :cond_1c

    .line 136
    :try_start_7
    const-class v0, Landroid/os/Build;

    const-string v3, "hasSmartBar"

    new-array v4, v2, [Ljava/lang/Class;

    invoke-virtual {v0, v3, v4}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;

    move-result-object v0

    if-eqz v0, :cond_15

    const/4 v0, 0x1

    goto :goto_16

    :cond_15
    const/4 v0, 0x0

    .line 137
    :goto_16
    sput v0, Lsg/bigo/svcapi/util/RomProperty;->sFlymeFlag:I
    :try_end_18
    .catch Ljava/lang/Exception; {:try_start_7 .. :try_end_18} :catch_19

    goto :goto_1c

    .line 139
    :catch_19
    sput v2, Lsg/bigo/svcapi/util/RomProperty;->sFlymeFlag:I

    return v2

    .line 144
    :cond_1c
    :goto_1c
    sget v0, Lsg/bigo/svcapi/util/RomProperty;->sFlymeFlag:I

    if-lez v0, :cond_21

    return v1

    :cond_21
    return v2
.end method

.method public static isMIUI()Z
    .registers 1

    .line 79
    sget-boolean v0, Lsg/bigo/svcapi/util/RomProperty;->sIsMIUI:Z

    return v0
.end method

.method public static isMIUIv5()Z
    .registers 1

    .line 83
    sget-boolean v0, Lsg/bigo/svcapi/util/RomProperty;->sIsMIUIv5:Z

    return v0
.end method

.method public static isMIUIv6()Z
    .registers 1

    .line 87
    sget-boolean v0, Lsg/bigo/svcapi/util/RomProperty;->sIsMIUIv6:Z

    return v0
.end method