PermissionChecker.smali

.class public Lio/agora/base/internal/PermissionChecker;
.super Ljava/lang/Object;


# static fields
.field static forceCheckPermissionFail:Z


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

    return-void
.end method

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

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

    return-void
.end method

.method public static hasCameraPermission()Z
    .registers 1

    const-string v0, "android.permission.CAMERA"

    invoke-static {v0}, Lio/agora/base/internal/PermissionChecker;->hasPermission(Ljava/lang/String;)Z

    move-result v0

    return v0
.end method

.method public static hasChangeNetPermission()Z
    .registers 1

    const-string v0, "android.permission.CHANGE_NETWORK_STATE"

    invoke-static {v0}, Lio/agora/base/internal/PermissionChecker;->hasPermission(Ljava/lang/String;)Z

    move-result v0

    return v0
.end method

.method public static hasPermission(Ljava/lang/String;)Z
    .registers 4
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "perm"
        }
    .end annotation

    invoke-static {}, Lio/agora/base/internal/ContextUtils;->getApplicationContext()Landroid/content/Context;

    move-result-object v0

    const/4 v1, 0x0

    if-eqz v0, :cond_13

    sget-boolean v2, Lio/agora/base/internal/PermissionChecker;->forceCheckPermissionFail:Z

    if-eqz v2, :cond_c

    goto :goto_13

    :cond_c
    invoke-virtual {v0, p0}, Landroid/content/Context;->checkCallingOrSelfPermission(Ljava/lang/String;)I

    move-result p0

    if-nez p0, :cond_13

    const/4 v1, 0x1

    :cond_13
    :goto_13
    return v1
.end method

.method public static hasRecordAudioPermission()Z
    .registers 1

    const-string v0, "android.permission.RECORD_AUDIO"

    invoke-static {v0}, Lio/agora/base/internal/PermissionChecker;->hasPermission(Ljava/lang/String;)Z

    move-result v0

    return v0
.end method

.method static setForceCheckPermissionFail(Z)V
    .registers 1
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "forceCheckPermissionFail"
        }
    .end annotation

    sput-boolean p0, Lio/agora/base/internal/PermissionChecker;->forceCheckPermissionFail:Z

    return-void
.end method