ImoPermission$a.smali
.class public final Lcom/imo/android/imoim/managers/ImoPermission$a;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/imo/android/imoim/managers/ImoPermission;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "a"
.end annotation
# instance fields
.field a:Landroid/content/Context;
.field public b:[Ljava/lang/String;
.field public c:Lcom/imo/android/imoim/managers/ImoPermission$Listener;
.field d:Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;
.field e:Landroid/os/Handler;
.field f:Ljava/util/concurrent/atomic/AtomicInteger;
.field g:Ljava/lang/String;
.field h:Lcom/imo/android/imoim/managers/ImoPermission$b;
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.registers 5
.line 155
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x0
.line 148
iput-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$a;->c:Lcom/imo/android/imoim/managers/ImoPermission$Listener;
.line 151
new-instance v0, Ljava/util/concurrent/atomic/AtomicInteger;
const/4 v1, 0x0
invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicInteger;-><init>(I)V
iput-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$a;->f:Ljava/util/concurrent/atomic/AtomicInteger;
.line 153
new-instance v0, Lcom/imo/android/imoim/managers/ImoPermission$b;
invoke-direct {v0}, Lcom/imo/android/imoim/managers/ImoPermission$b;-><init>()V
iput-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$a;->h:Lcom/imo/android/imoim/managers/ImoPermission$b;
.line 156
iput-object p1, p0, Lcom/imo/android/imoim/managers/ImoPermission$a;->a:Landroid/content/Context;
.line 157
new-instance v0, Landroid/os/Handler;
invoke-virtual {p1}, Landroid/content/Context;->getMainLooper()Landroid/os/Looper;
move-result-object v1
invoke-direct {v0, v1}, Landroid/os/Handler;-><init>(Landroid/os/Looper;)V
iput-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$a;->e:Landroid/os/Handler;
.line 158
invoke-direct {p0}, Lcom/imo/android/imoim/managers/ImoPermission$a;->d()Z
move-result v0
const/4 v1, 0x1
const-string v2, "ImoPermission"
if-nez v0, :cond_59
.line 160
instance-of v0, p1, Landroidx/fragment/app/FragmentActivity;
if-nez v0, :cond_34
.line 161
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p1
goto :goto_55
.line 162
:cond_34
move-object v0, p1
check-cast v0, Landroidx/fragment/app/FragmentActivity;
invoke-virtual {v0}, Landroidx/fragment/app/FragmentActivity;->isFinishing()Z
move-result v0
if-eqz v0, :cond_53
.line 163
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p1, " isFinishing"
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
goto :goto_55
:cond_53
const-string p1, ""
.line 1079
:goto_55
invoke-static {v2, p1, v1}, Lcom/imo/android/imoim/util/bt;->a(Ljava/lang/String;Ljava/lang/String;Z)V
return-void
.line 169
:cond_59
:try_start_59
check-cast p1, Landroidx/fragment/app/FragmentActivity;
invoke-static {p1}, Landroidx/lifecycle/ViewModelProviders;->of(Landroidx/fragment/app/FragmentActivity;)Landroidx/lifecycle/ViewModelProvider;
move-result-object p1
const-class v0, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;
invoke-virtual {p1, v0}, Landroidx/lifecycle/ViewModelProvider;->get(Ljava/lang/Class;)Landroidx/lifecycle/ViewModel;
move-result-object p1
check-cast p1, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;
iput-object p1, p0, Lcom/imo/android/imoim/managers/ImoPermission$a;->d:Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;
:try_end_69
.catch Ljava/lang/Exception; {:try_start_59 .. :try_end_69} :catch_6a
return-void
:catch_6a
move-exception p1
const-string v0, "get model failed: "
.line 1083
invoke-static {v2, v0, p1, v1}, Lcom/imo/android/imoim/util/bt;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;Z)V
return-void
.end method
.method private b(Z)Z
.registers 5
.line 231
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/4 v1, 0x1
const/16 v2, 0x17
if-ge v0, v2, :cond_b
.line 232
invoke-virtual {p0, v1}, Lcom/imo/android/imoim/managers/ImoPermission$a;->a(Z)V
return v1
.line 235
:cond_b
invoke-direct {p0}, Lcom/imo/android/imoim/managers/ImoPermission$a;->c()Z
move-result v0
if-eqz v0, :cond_15
.line 236
invoke-virtual {p0, v1}, Lcom/imo/android/imoim/managers/ImoPermission$a;->a(Z)V
return v1
:cond_15
const/4 v0, 0x0
if-nez p1, :cond_19
return v0
.line 244
:cond_19
invoke-direct {p0}, Lcom/imo/android/imoim/managers/ImoPermission$a;->d()Z
move-result p1
if-nez p1, :cond_20
return v0
.line 248
:cond_20
iget-object p1, p0, Lcom/imo/android/imoim/managers/ImoPermission$a;->d:Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;
if-eqz p1, :cond_27
.line 249
invoke-virtual {p1, p0}, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->a(Lcom/imo/android/imoim/managers/ImoPermission$a;)V
:cond_27
return v0
.end method
.method private c()Z
.registers 7
.line 316
iget-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$a;->b:[Ljava/lang/String;
array-length v1, v0
const/4 v2, 0x0
const/4 v3, 0x0
:goto_5
if-ge v3, v1, :cond_15
aget-object v4, v0, v3
.line 317
iget-object v5, p0, Lcom/imo/android/imoim/managers/ImoPermission$a;->a:Landroid/content/Context;
invoke-static {v5, v4}, Landroidx/core/content/ContextCompat;->checkSelfPermission(Landroid/content/Context;Ljava/lang/String;)I
move-result v4
if-eqz v4, :cond_12
return v2
:cond_12
add-int/lit8 v3, v3, 0x1
goto :goto_5
:cond_15
const/4 v0, 0x1
return v0
.end method
.method private d()Z
.registers 3
.line 412
iget-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$a;->a:Landroid/content/Context;
instance-of v1, v0, Landroidx/fragment/app/FragmentActivity;
if-eqz v1, :cond_10
check-cast v0, Landroidx/fragment/app/FragmentActivity;
.line 413
invoke-virtual {v0}, Landroidx/fragment/app/FragmentActivity;->isFinishing()Z
move-result v0
if-nez v0, :cond_10
const/4 v0, 0x1
return v0
:cond_10
const/4 v0, 0x0
return v0
.end method
# virtual methods
.method public final a(Lcom/imo/android/imoim/managers/ImoPermission$Listener;)Lcom/imo/android/imoim/managers/ImoPermission$a;
.registers 2
.line 191
iput-object p1, p0, Lcom/imo/android/imoim/managers/ImoPermission$a;->c:Lcom/imo/android/imoim/managers/ImoPermission$Listener;
return-object p0
.end method
.method public final a(Ljava/lang/String;)Lcom/imo/android/imoim/managers/ImoPermission$a;
.registers 4
const/4 v0, 0x1
new-array v0, v0, [Ljava/lang/String;
const/4 v1, 0x0
aput-object p1, v0, v1
.line 176
iput-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$a;->b:[Ljava/lang/String;
return-object p0
.end method
.method public final a([Ljava/lang/String;)Lcom/imo/android/imoim/managers/ImoPermission$a;
.registers 2
.line 181
iput-object p1, p0, Lcom/imo/android/imoim/managers/ImoPermission$a;->b:[Ljava/lang/String;
return-object p0
.end method
.method public final a(I[Ljava/lang/String;[I)V
.registers 5
.line 219
iget-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$a;->d:Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;
if-eqz v0, :cond_7
.line 220
invoke-virtual {v0, p1, p2, p3}, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->a(I[Ljava/lang/String;[I)V
:cond_7
return-void
.end method
.method final a(Z)V
.registers 4
.line 294
iget-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$a;->c:Lcom/imo/android/imoim/managers/ImoPermission$Listener;
if-eqz v0, :cond_e
.line 295
iget-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$a;->e:Landroid/os/Handler;
new-instance v1, Lcom/imo/android/imoim/managers/ImoPermission$a$2;
invoke-direct {v1, p0, p1}, Lcom/imo/android/imoim/managers/ImoPermission$a$2;-><init>(Lcom/imo/android/imoim/managers/ImoPermission$a;Z)V
invoke-virtual {v0, v1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
:cond_e
return-void
.end method
.method public final a()Z
.registers 3
.line 225
invoke-direct {p0}, Lcom/imo/android/imoim/managers/ImoPermission$a;->d()Z
move-result v0
const/4 v1, 0x0
if-nez v0, :cond_8
return v1
.line 227
:cond_8
iget-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$a;->d:Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;
if-eqz v0, :cond_18
invoke-static {v0}, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->a(Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;)Ljava/util/concurrent/atomic/AtomicBoolean;
move-result-object v0
invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z
move-result v0
if-eqz v0, :cond_18
const/4 v0, 0x1
return v0
:cond_18
return v1
.end method
.method public final b()V
.registers 4
.line 256
iget-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$a;->a:Landroid/content/Context;
instance-of v0, v0, Landroidx/core/app/ActivityCompat$OnRequestPermissionsResultCallback;
if-nez v0, :cond_1d
.line 257
new-instance v0, Ljava/lang/StringBuilder;
const-string v1, "Current context is invalid: "
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
iget-object v1, p0, Lcom/imo/android/imoim/managers/ImoPermission$a;->a:Landroid/content/Context;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
const/4 v1, 0x1
const-string v2, "ImoPermission"
.line 3079
invoke-static {v2, v0, v1}, Lcom/imo/android/imoim/util/bt;->a(Ljava/lang/String;Ljava/lang/String;Z)V
return-void
.line 260
:cond_1d
new-instance v0, Lcom/imo/android/imoim/managers/ImoPermission$a$1;
invoke-direct {v0, p0}, Lcom/imo/android/imoim/managers/ImoPermission$a$1;-><init>(Lcom/imo/android/imoim/managers/ImoPermission$a;)V
invoke-static {v0}, Lcom/imo/android/imoim/util/ec;->a(Ljava/lang/Runnable;)V
return-void
.end method
.method public final b(Ljava/lang/String;)Z
.registers 4
.line 200
invoke-static {p1}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object v0
const-string v1, "askAlways from "
invoke-virtual {v1, v0}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
const-string v1, "ImoPermission"
.line 2071
invoke-static {v1, v0}, Lcom/imo/android/imoim/util/bt;->d(Ljava/lang/String;Ljava/lang/String;)V
.line 201
iput-object p1, p0, Lcom/imo/android/imoim/managers/ImoPermission$a;->g:Ljava/lang/String;
const/4 p1, 0x1
.line 203
invoke-direct {p0, p1}, Lcom/imo/android/imoim/managers/ImoPermission$a;->b(Z)Z
move-result p1
return p1
.end method
.method public final c(Ljava/lang/String;)V
.registers 5
.line 211
iget-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$a;->d:Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;
if-eqz v0, :cond_c
invoke-virtual {v0, p1}, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->a(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_c
const/4 v0, 0x1
goto :goto_d
:cond_c
const/4 v0, 0x0
.line 212
:goto_d
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "askOnce from "
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v2, ", askAgain="
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
const-string v2, "ImoPermission"
.line 3071
invoke-static {v2, v1}, Lcom/imo/android/imoim/util/bt;->d(Ljava/lang/String;Ljava/lang/String;)V
.line 213
iput-object p1, p0, Lcom/imo/android/imoim/managers/ImoPermission$a;->g:Ljava/lang/String;
.line 215
invoke-direct {p0, v0}, Lcom/imo/android/imoim/managers/ImoPermission$a;->b(Z)Z
return-void
.end method