c.smali
.class public Luq/c;
.super Ljava/lang/Object;
.source "EasyPermissions.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Luq/c$b;,
Luq/c$a;
}
.end annotation
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method public static varargs a(I[Ljava/lang/String;[I[Ljava/lang/Object;)V
.registers 10
.param p0 # I
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # [Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # [I
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
new-instance v1, Ljava/util/ArrayList;
invoke-direct {v1}, Ljava/util/ArrayList;-><init>()V
const/4 v2, 0x0
const/4 v3, 0x0
:goto_c
array-length v4, p1
if-ge v3, v4, :cond_1f
aget-object v4, p1, v3
aget v5, p2, v3
if-nez v5, :cond_19
invoke-interface {v0, v4}, Ljava/util/List;->add(Ljava/lang/Object;)Z
goto :goto_1c
:cond_19
invoke-interface {v1, v4}, Ljava/util/List;->add(Ljava/lang/Object;)Z
:goto_1c
add-int/lit8 v3, v3, 0x1
goto :goto_c
:cond_1f
array-length p1, p3
:goto_20
if-ge v2, p1, :cond_56
aget-object p2, p3, v2
invoke-interface {v0}, Ljava/util/List;->isEmpty()Z
move-result v3
if-nez v3, :cond_34
instance-of v3, p2, Luq/c$a;
if-eqz v3, :cond_34
move-object v3, p2
check-cast v3, Luq/c$a;
invoke-interface {v3, p0, v0}, Luq/c$a;->onPermissionsGranted(ILjava/util/List;)V
:cond_34
invoke-interface {v1}, Ljava/util/List;->isEmpty()Z
move-result v3
if-nez v3, :cond_44
instance-of v3, p2, Luq/c$a;
if-eqz v3, :cond_44
move-object v3, p2
check-cast v3, Luq/c$a;
invoke-interface {v3, p0, v1}, Luq/c$a;->onPermissionsDenied(ILjava/util/List;)V
:cond_44
invoke-interface {v0}, Ljava/util/List;->isEmpty()Z
move-result v3
if-nez v3, :cond_53
invoke-interface {v1}, Ljava/util/List;->isEmpty()Z
move-result v3
if-eqz v3, :cond_53
invoke-static {p2, p0}, Luq/c;->a(Ljava/lang/Object;I)V
:cond_53
add-int/lit8 v2, v2, 0x1
goto :goto_20
:cond_56
return-void
.end method
.method public static a(Ljava/lang/Object;I)V
.registers 10
.param p0 # Ljava/lang/Object;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
const-string v0, "EasyPermissions"
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v1
invoke-static {p0}, Luq/c;->a(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_10
invoke-virtual {v1}, Ljava/lang/Class;->getSuperclass()Ljava/lang/Class;
move-result-object v1
:cond_10
:goto_10
if-eqz v1, :cond_7a
invoke-virtual {v1}, Ljava/lang/Class;->getDeclaredMethods()[Ljava/lang/reflect/Method;
move-result-object v2
array-length v3, v2
const/4 v4, 0x0
const/4 v5, 0x0
:goto_19
if-ge v5, v3, :cond_75
aget-object v6, v2, v5
const-class v7, Luq/a;
invoke-virtual {v6, v7}, Ljava/lang/reflect/Method;->getAnnotation(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
move-result-object v7
check-cast v7, Luq/a;
if-eqz v7, :cond_72
invoke-interface {v7}, Luq/a;->value()I
move-result v7
if-ne v7, p1, :cond_72
invoke-virtual {v6}, Ljava/lang/reflect/Method;->getParameterTypes()[Ljava/lang/Class;
move-result-object v7
array-length v7, v7
if-gtz v7, :cond_52
:try_start_34
invoke-virtual {v6}, Ljava/lang/reflect/Method;->isAccessible()Z
move-result v7
if-nez v7, :cond_3e
const/4 v7, 0x1
invoke-virtual {v6, v7}, Ljava/lang/reflect/Method;->setAccessible(Z)V
:cond_3e
new-array v7, v4, [Ljava/lang/Object;
invoke-virtual {v6, p0, v7}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
:try_end_43
.catch Ljava/lang/IllegalAccessException; {:try_start_34 .. :try_end_43} :catch_4b
.catch Ljava/lang/reflect/InvocationTargetException; {:try_start_34 .. :try_end_43} :catch_44
goto :goto_72
:catch_44
move-exception v6
const-string v7, "runDefaultMethod:InvocationTargetException"
invoke-static {v0, v7, v6}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
goto :goto_72
:catch_4b
move-exception v6
const-string v7, "runDefaultMethod:IllegalAccessException"
invoke-static {v0, v7, v6}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
goto :goto_72
:cond_52
new-instance p0, Ljava/lang/RuntimeException;
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
const-string v0, "Cannot execute method "
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v6}, Ljava/lang/reflect/Method;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, " because it is non-void method and/or has input parameters."
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {p0, p1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
throw p0
:cond_72
:goto_72
add-int/lit8 v5, v5, 0x1
goto :goto_19
:cond_75
invoke-virtual {v1}, Ljava/lang/Class;->getSuperclass()Ljava/lang/Class;
move-result-object v1
goto :goto_10
:cond_7a
return-void
.end method
.method public static a(Ljava/lang/Object;I[Ljava/lang/String;)V
.registers 7
.param p0 # Ljava/lang/Object;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # I
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
array-length v0, p2
new-array v0, v0, [I
const/4 v1, 0x0
const/4 v2, 0x0
:goto_5
array-length v3, p2
if-ge v2, v3, :cond_d
aput v1, v0, v2
add-int/lit8 v2, v2, 0x1
goto :goto_5
:cond_d
const/4 v2, 0x1
new-array v2, v2, [Ljava/lang/Object;
aput-object p0, v2, v1
invoke-static {p1, p2, v0, v2}, Luq/c;->a(I[Ljava/lang/String;[I[Ljava/lang/Object;)V
return-void
.end method
.method public static a(Luq/d;)V
.registers 10
invoke-virtual {p0}, Luq/d;->a()Lwq/e;
move-result-object v0
invoke-virtual {v0}, Lwq/e;->a()Landroid/content/Context;
move-result-object v0
invoke-virtual {p0}, Luq/d;->c()[Ljava/lang/String;
move-result-object v1
invoke-static {v0, v1}, Luq/c;->a(Landroid/content/Context;[Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_26
invoke-virtual {p0}, Luq/d;->a()Lwq/e;
move-result-object v0
invoke-virtual {v0}, Lwq/e;->b()Ljava/lang/Object;
move-result-object v0
invoke-virtual {p0}, Luq/d;->f()I
move-result v1
invoke-virtual {p0}, Luq/d;->c()[Ljava/lang/String;
move-result-object p0
invoke-static {v0, v1, p0}, Luq/c;->a(Ljava/lang/Object;I[Ljava/lang/String;)V
return-void
:cond_26
invoke-virtual {p0}, Luq/d;->a()Lwq/e;
move-result-object v2
invoke-virtual {p0}, Luq/d;->e()Ljava/lang/String;
move-result-object v3
invoke-virtual {p0}, Luq/d;->d()Ljava/lang/String;
move-result-object v4
invoke-virtual {p0}, Luq/d;->b()Ljava/lang/String;
move-result-object v5
invoke-virtual {p0}, Luq/d;->g()I
move-result v6
invoke-virtual {p0}, Luq/d;->f()I
move-result v7
invoke-virtual {p0}, Luq/d;->c()[Ljava/lang/String;
move-result-object v8
invoke-virtual/range {v2 .. v8}, Lwq/e;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;II[Ljava/lang/String;)V
return-void
.end method
.method public static a(Lvq/a;)V
.registers 2
sget-object v0, Lvq/b;->b:Lvq/b;
invoke-virtual {v0, p0}, Lvq/b;->a(Lvq/a;)V
return-void
.end method
.method public static a(Landroid/app/Activity;Ljava/lang/String;)Z
.registers 2
.param p0 # Landroid/app/Activity;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
invoke-static {p0}, Lwq/e;->a(Landroid/app/Activity;)Lwq/e;
move-result-object p0
invoke-virtual {p0, p1}, Lwq/e;->a(Ljava/lang/String;)Z
move-result p0
return p0
.end method
.method public static varargs a(Landroid/content/Context;[Ljava/lang/String;)Z
.registers 7
.param p0 # Landroid/content/Context;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # [Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.annotation build Landroidx/annotation/Size;
min = 0x1L
.end annotation
.end param
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/4 v1, 0x1
const/16 v2, 0x17
if-ge v0, v2, :cond_f
const-string p0, "EasyPermissions"
const-string p1, "hasPermissions: API version < M, returning true by default"
invoke-static {p0, p1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
return v1
:cond_f
if-eqz p0, :cond_23
array-length v0, p1
const/4 v2, 0x0
const/4 v3, 0x0
:goto_14
if-ge v3, v0, :cond_22
aget-object v4, p1, v3
invoke-static {p0, v4}, Landroidx/core/content/ContextCompat;->checkSelfPermission(Landroid/content/Context;Ljava/lang/String;)I
move-result v4
if-eqz v4, :cond_1f
return v2
:cond_1f
add-int/lit8 v3, v3, 0x1
goto :goto_14
:cond_22
return v1
:cond_23
new-instance p0, Ljava/lang/IllegalArgumentException;
const-string p1, "Can\'t check permissions for null context"
invoke-direct {p0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
goto :goto_2c
:goto_2b
throw p0
:goto_2c
goto :goto_2b
.end method
.method public static a(Ljava/lang/Object;)Z
.registers 3
.param p0 # Ljava/lang/Object;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
move-result-object v0
const-string v1, "_"
invoke-virtual {v0, v1}, Ljava/lang/String;->endsWith(Ljava/lang/String;)Z
move-result v0
const/4 v1, 0x0
if-nez v0, :cond_12
return v1
:cond_12
:try_start_12
const-string v0, "kq.a"
invoke-static {v0}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v0
invoke-virtual {v0, p0}, Ljava/lang/Class;->isInstance(Ljava/lang/Object;)Z
move-result p0
:try_end_1c
.catch Ljava/lang/ClassNotFoundException; {:try_start_12 .. :try_end_1c} :catch_1d
return p0
:catch_1d
return v1
.end method