.class public Lcom/moji/camera/permission/PermissionManager; .super Ljava/lang/Object; .source "PermissionManager.java" # annotations .annotation system Ldalvik/annotation/MemberClasses; value = { Lcom/moji/camera/permission/PermissionManager$OnPermissionsResultCallback;, Lcom/moji/camera/permission/PermissionManager$TPermissionType;, Lcom/moji/camera/permission/PermissionManager$TPermission; } .end annotation # instance fields .field private a:Lcom/moji/camera/permission/InvokeParam; .field private b:Lcom/moji/camera/permission/PermissionManager$OnPermissionsResultCallback; # direct methods .method public constructor ()V .locals 0 .line 25 invoke-direct {p0}, Ljava/lang/Object;->()V return-void .end method .method private a(Landroid/app/Activity;Lcom/moji/camera/permission/PermissionManager$TPermissionType;)V .locals 2 .line 128 iget-object v0, p0, Lcom/moji/camera/permission/PermissionManager;->b:Lcom/moji/camera/permission/PermissionManager$OnPermissionsResultCallback; if-eqz v0, :cond_0 .line 129 iget-object v0, p0, Lcom/moji/camera/permission/PermissionManager;->b:Lcom/moji/camera/permission/PermissionManager$OnPermissionsResultCallback; invoke-interface {v0, p2}, Lcom/moji/camera/permission/PermissionManager$OnPermissionsResultCallback;->a(Lcom/moji/camera/permission/PermissionManager$TPermissionType;)V :cond_0 if-eqz p1, :cond_2 .line 131 invoke-virtual {p1}, Landroid/app/Activity;->isFinishing()Z move-result v0 if-eqz v0, :cond_1 goto :goto_1 .line 134 :cond_1 sget-object v0, Lcom/moji/camera/permission/PermissionManager$1;->a:[I invoke-virtual {p2}, Lcom/moji/camera/permission/PermissionManager$TPermissionType;->ordinal()I move-result p2 aget p2, v0, p2 const/4 v0, 0x0 packed-switch p2, :pswitch_data_0 goto :goto_0 .line 142 :pswitch_0 invoke-virtual {p1}, Landroid/app/Activity;->getResources()Landroid/content/res/Resources; move-result-object p2 sget v1, Lcom/moji/camera/R$string;->tip_permission_storage:I invoke-virtual {p2, v1}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String; move-result-object p2 invoke-static {p1, p2, v0}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast; move-result-object p2 invoke-virtual {p2}, Landroid/widget/Toast;->show()V goto :goto_0 .line 139 :pswitch_1 invoke-virtual {p1}, Landroid/app/Activity;->getResources()Landroid/content/res/Resources; move-result-object p2 sget v1, Lcom/moji/camera/R$string;->tip_permission_camera:I invoke-virtual {p2, v1}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String; move-result-object p2 invoke-static {p1, p2, v0}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast; move-result-object p2 invoke-virtual {p2}, Landroid/widget/Toast;->show()V goto :goto_0 .line 136 :pswitch_2 invoke-virtual {p1}, Landroid/app/Activity;->getResources()Landroid/content/res/Resources; move-result-object p2 sget v1, Lcom/moji/camera/R$string;->tip_permission_camera_storage:I invoke-virtual {p2, v1}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String; move-result-object p2 invoke-static {p1, p2, v0}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast; move-result-object p2 invoke-virtual {p2}, Landroid/widget/Toast;->show()V .line 147 :goto_0 invoke-virtual {p1}, Landroid/app/Activity;->finish()V return-void :cond_2 :goto_1 return-void nop :pswitch_data_0 .packed-switch 0x1 :pswitch_2 :pswitch_1 :pswitch_0 .end packed-switch .end method .method public static a(Landroid/app/Activity;[Ljava/lang/String;)V .locals 1 .param p0 # Landroid/app/Activity; .annotation build Landroid/support/annotation/NonNull; .end annotation .end param .param p1 # [Ljava/lang/String; .annotation build Landroid/support/annotation/NonNull; .end annotation .end param const/16 v0, 0x7d0 .line 80 invoke-static {p0, p1, v0}, Landroid/support/v4/app/ActivityCompat;->requestPermissions(Landroid/app/Activity;[Ljava/lang/String;I)V return-void .end method # virtual methods .method public a(Landroid/app/Activity;I[Ljava/lang/String;[I)V .locals 6 const/16 v0, 0x7d0 if-eq p2, v0, :cond_0 return-void .line 96 :cond_0 array-length p2, p3 const/4 v0, 0x0 const/4 v1, 0x1 const/4 v1, 0x0 const/4 v2, 0x1 const/4 v3, 0x1 :goto_0 if-ge v1, p2, :cond_3 .line 97 aget v4, p4, v1 if-eqz v4, :cond_2 .line 98 sget-object v4, Lcom/moji/camera/permission/PermissionManager$TPermission;->STORAGE:Lcom/moji/camera/permission/PermissionManager$TPermission; invoke-virtual {v4}, Lcom/moji/camera/permission/PermissionManager$TPermission;->stringValue()Ljava/lang/String; move-result-object v4 aget-object v5, p3, v1 invoke-static {v4, v5}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z move-result v4 if-eqz v4, :cond_1 const/4 v3, 0x0 goto :goto_1 .line 100 :cond_1 sget-object v4, Lcom/moji/camera/permission/PermissionManager$TPermission;->CAMERA:Lcom/moji/camera/permission/PermissionManager$TPermission; invoke-virtual {v4}, Lcom/moji/camera/permission/PermissionManager$TPermission;->stringValue()Ljava/lang/String; move-result-object v4 aget-object v5, p3, v1 invoke-static {v4, v5}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z move-result v4 if-eqz v4, :cond_2 const/4 v2, 0x0 :cond_2 :goto_1 add-int/lit8 v1, v1, 0x1 goto :goto_0 :cond_3 if-eqz v2, :cond_5 if-eqz v3, :cond_4 .line 110 :try_start_0 sget-object p2, Lcom/moji/camera/permission/PermissionManager$TPermissionType;->GRANTED:Lcom/moji/camera/permission/PermissionManager$TPermissionType; invoke-direct {p0, p1, p2}, Lcom/moji/camera/permission/PermissionManager;->a(Landroid/app/Activity;Lcom/moji/camera/permission/PermissionManager$TPermissionType;)V :try_end_0 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0 goto :goto_2 :catch_0 move-exception p2 const-string p3, "PermissionManager" .line 112 invoke-static {p3, p2}, Lcom/moji/tool/log/MJLogger;->a(Ljava/lang/String;Ljava/lang/Throwable;)V .line 113 sget-object p2, Lcom/moji/camera/permission/PermissionManager$TPermissionType;->DENIED:Lcom/moji/camera/permission/PermissionManager$TPermissionType; invoke-direct {p0, p1, p2}, Lcom/moji/camera/permission/PermissionManager;->a(Landroid/app/Activity;Lcom/moji/camera/permission/PermissionManager$TPermissionType;)V goto :goto_2 .line 116 :cond_4 sget-object p2, Lcom/moji/camera/permission/PermissionManager$TPermissionType;->ONLY_STORAGE_DENIED:Lcom/moji/camera/permission/PermissionManager$TPermissionType; invoke-direct {p0, p1, p2}, Lcom/moji/camera/permission/PermissionManager;->a(Landroid/app/Activity;Lcom/moji/camera/permission/PermissionManager$TPermissionType;)V goto :goto_2 :cond_5 if-eqz v3, :cond_6 .line 120 sget-object p2, Lcom/moji/camera/permission/PermissionManager$TPermissionType;->ONLY_CAMERA_DENIED:Lcom/moji/camera/permission/PermissionManager$TPermissionType; invoke-direct {p0, p1, p2}, Lcom/moji/camera/permission/PermissionManager;->a(Landroid/app/Activity;Lcom/moji/camera/permission/PermissionManager$TPermissionType;)V goto :goto_2 .line 122 :cond_6 sget-object p2, Lcom/moji/camera/permission/PermissionManager$TPermissionType;->DENIED:Lcom/moji/camera/permission/PermissionManager$TPermissionType; invoke-direct {p0, p1, p2}, Lcom/moji/camera/permission/PermissionManager;->a(Landroid/app/Activity;Lcom/moji/camera/permission/PermissionManager$TPermissionType;)V :goto_2 return-void .end method .method public a(Lcom/moji/camera/permission/InvokeParam;)V .locals 0 .line 28 iput-object p1, p0, Lcom/moji/camera/permission/PermissionManager;->a:Lcom/moji/camera/permission/InvokeParam; return-void .end method .method public a(Landroid/content/Context;Ljava/lang/String;)Z .locals 0 .param p1 # Landroid/content/Context; .annotation build Landroid/support/annotation/NonNull; .end annotation .end param .param p2 # Ljava/lang/String; .annotation build Landroid/support/annotation/NonNull; .end annotation .end param .line 71 invoke-static {p1, p2}, Landroid/support/v4/content/ContextCompat;->checkSelfPermission(Landroid/content/Context;Ljava/lang/String;)I move-result p1 if-nez p1, :cond_0 const/4 p1, 0x1 goto :goto_0 :cond_0 const/4 p1, 0x0 :goto_0 return p1 .end method