.class public final Lcom/blankj/utilcode/constant/PermissionConstants; .super Ljava/lang/Object; .source "PermissionConstants.java" # annotations .annotation system Ldalvik/annotation/MemberClasses; value = { Lcom/blankj/utilcode/constant/PermissionConstants$PermissionGroup; } .end annotation # static fields .field public static final ACTIVITY_RECOGNITION:Ljava/lang/String; = "ACTIVITY_RECOGNITION" .field public static final CALENDAR:Ljava/lang/String; = "CALENDAR" .field public static final CAMERA:Ljava/lang/String; = "CAMERA" .field public static final CONTACTS:Ljava/lang/String; = "CONTACTS" .field private static final GROUP_ACTIVITY_RECOGNITION:[Ljava/lang/String; .field private static final GROUP_CALENDAR:[Ljava/lang/String; .field private static final GROUP_CAMERA:[Ljava/lang/String; .field private static final GROUP_CONTACTS:[Ljava/lang/String; .field private static final GROUP_LOCATION:[Ljava/lang/String; .field private static final GROUP_MICROPHONE:[Ljava/lang/String; .field private static final GROUP_PHONE:[Ljava/lang/String; .field private static final GROUP_PHONE_BELOW_O:[Ljava/lang/String; .field private static final GROUP_SENSORS:[Ljava/lang/String; .field private static final GROUP_SMS:[Ljava/lang/String; .field private static final GROUP_STORAGE:[Ljava/lang/String; .field public static final LOCATION:Ljava/lang/String; = "LOCATION" .field public static final MICROPHONE:Ljava/lang/String; = "MICROPHONE" .field public static final PHONE:Ljava/lang/String; = "PHONE" .field public static final SENSORS:Ljava/lang/String; = "SENSORS" .field public static final SMS:Ljava/lang/String; = "SMS" .field public static final STORAGE:Ljava/lang/String; = "STORAGE" # direct methods .method static constructor ()V .locals 10 const-string v0, "android.permission.READ_CALENDAR" const-string v1, "android.permission.WRITE_CALENDAR" .line 34 filled-new-array {v0, v1}, [Ljava/lang/String; move-result-object v0 sput-object v0, Lcom/blankj/utilcode/constant/PermissionConstants;->GROUP_CALENDAR:[Ljava/lang/String; const-string v0, "android.permission.CAMERA" .line 37 filled-new-array {v0}, [Ljava/lang/String; move-result-object v0 sput-object v0, Lcom/blankj/utilcode/constant/PermissionConstants;->GROUP_CAMERA:[Ljava/lang/String; const-string v0, "android.permission.READ_CONTACTS" const-string v1, "android.permission.WRITE_CONTACTS" const-string v2, "android.permission.GET_ACCOUNTS" .line 40 filled-new-array {v0, v1, v2}, [Ljava/lang/String; move-result-object v0 sput-object v0, Lcom/blankj/utilcode/constant/PermissionConstants;->GROUP_CONTACTS:[Ljava/lang/String; const-string v0, "android.permission.ACCESS_FINE_LOCATION" const-string v1, "android.permission.ACCESS_COARSE_LOCATION" const-string v2, "android.permission.ACCESS_BACKGROUND_LOCATION" .line 43 filled-new-array {v0, v1, v2}, [Ljava/lang/String; move-result-object v0 sput-object v0, Lcom/blankj/utilcode/constant/PermissionConstants;->GROUP_LOCATION:[Ljava/lang/String; const-string v0, "android.permission.RECORD_AUDIO" .line 46 filled-new-array {v0}, [Ljava/lang/String; move-result-object v0 sput-object v0, Lcom/blankj/utilcode/constant/PermissionConstants;->GROUP_MICROPHONE:[Ljava/lang/String; const-string v1, "android.permission.READ_PHONE_STATE" const-string v2, "android.permission.READ_PHONE_NUMBERS" const-string v3, "android.permission.CALL_PHONE" const-string v4, "android.permission.READ_CALL_LOG" const-string v5, "android.permission.WRITE_CALL_LOG" const-string v6, "com.android.voicemail.permission.ADD_VOICEMAIL" const-string v7, "android.permission.USE_SIP" const-string v8, "android.permission.PROCESS_OUTGOING_CALLS" const-string v9, "android.permission.ANSWER_PHONE_CALLS" .line 49 filled-new-array/range {v1 .. v9}, [Ljava/lang/String; move-result-object v0 sput-object v0, Lcom/blankj/utilcode/constant/PermissionConstants;->GROUP_PHONE:[Ljava/lang/String; const-string v1, "android.permission.READ_PHONE_STATE" const-string v2, "android.permission.READ_PHONE_NUMBERS" const-string v3, "android.permission.CALL_PHONE" const-string v4, "android.permission.READ_CALL_LOG" const-string v5, "android.permission.WRITE_CALL_LOG" const-string v6, "com.android.voicemail.permission.ADD_VOICEMAIL" const-string v7, "android.permission.USE_SIP" const-string v8, "android.permission.PROCESS_OUTGOING_CALLS" .line 54 filled-new-array/range {v1 .. v8}, [Ljava/lang/String; move-result-object v0 sput-object v0, Lcom/blankj/utilcode/constant/PermissionConstants;->GROUP_PHONE_BELOW_O:[Ljava/lang/String; const-string v0, "android.permission.BODY_SENSORS" .line 59 filled-new-array {v0}, [Ljava/lang/String; move-result-object v0 sput-object v0, Lcom/blankj/utilcode/constant/PermissionConstants;->GROUP_SENSORS:[Ljava/lang/String; const-string v0, "android.permission.SEND_SMS" const-string v1, "android.permission.RECEIVE_SMS" const-string v2, "android.permission.READ_SMS" const-string v3, "android.permission.RECEIVE_WAP_PUSH" const-string v4, "android.permission.RECEIVE_MMS" .line 62 filled-new-array {v0, v1, v2, v3, v4}, [Ljava/lang/String; move-result-object v0 sput-object v0, Lcom/blankj/utilcode/constant/PermissionConstants;->GROUP_SMS:[Ljava/lang/String; const-string v0, "android.permission.READ_EXTERNAL_STORAGE" const-string v1, "android.permission.WRITE_EXTERNAL_STORAGE" .line 66 filled-new-array {v0, v1}, [Ljava/lang/String; move-result-object v0 sput-object v0, Lcom/blankj/utilcode/constant/PermissionConstants;->GROUP_STORAGE:[Ljava/lang/String; const-string v0, "android.permission.ACTIVITY_RECOGNITION" .line 69 filled-new-array {v0}, [Ljava/lang/String; move-result-object v0 sput-object v0, Lcom/blankj/utilcode/constant/PermissionConstants;->GROUP_ACTIVITY_RECOGNITION:[Ljava/lang/String; return-void .end method .method public constructor ()V .locals 0 .line 21 invoke-direct {p0}, Ljava/lang/Object;->()V return-void .end method .method public static getPermissions(Ljava/lang/String;)[Ljava/lang/String; .locals 4 const/4 v0, 0x0 if-nez p0, :cond_0 new-array p0, v0, [Ljava/lang/String; return-object p0 .line 80 :cond_0 invoke-virtual {p0}, Ljava/lang/String;->hashCode()I const/4 v1, -0x1 invoke-virtual {p0}, Ljava/lang/String;->hashCode()I move-result v2 const/4 v3, 0x1 sparse-switch v2, :sswitch_data_0 goto/16 :goto_0 :sswitch_0 const-string v2, "CAMERA" invoke-virtual {p0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v2 if-nez v2, :cond_1 goto/16 :goto_0 :cond_1 const/16 v1, 0x9 goto/16 :goto_0 :sswitch_1 const-string v2, "MICROPHONE" invoke-virtual {p0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v2 if-nez v2, :cond_2 goto/16 :goto_0 :cond_2 const/16 v1, 0x8 goto/16 :goto_0 :sswitch_2 const-string v2, "CALENDAR" invoke-virtual {p0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v2 if-nez v2, :cond_3 goto :goto_0 :cond_3 const/4 v1, 0x7 goto :goto_0 :sswitch_3 const-string v2, "CONTACTS" invoke-virtual {p0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v2 if-nez v2, :cond_4 goto :goto_0 :cond_4 const/4 v1, 0x6 goto :goto_0 :sswitch_4 const-string v2, "ACTIVITY_RECOGNITION" invoke-virtual {p0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v2 if-nez v2, :cond_5 goto :goto_0 :cond_5 const/4 v1, 0x5 goto :goto_0 :sswitch_5 const-string v2, "PHONE" invoke-virtual {p0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v2 if-nez v2, :cond_6 goto :goto_0 :cond_6 const/4 v1, 0x4 goto :goto_0 :sswitch_6 const-string v2, "SMS" invoke-virtual {p0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v2 if-nez v2, :cond_7 goto :goto_0 :cond_7 const/4 v1, 0x3 goto :goto_0 :sswitch_7 const-string v2, "STORAGE" invoke-virtual {p0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v2 if-nez v2, :cond_8 goto :goto_0 :cond_8 const/4 v1, 0x2 goto :goto_0 :sswitch_8 const-string v2, "SENSORS" invoke-virtual {p0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v2 if-nez v2, :cond_9 goto :goto_0 :cond_9 move v1, v3 goto :goto_0 :sswitch_9 const-string v2, "LOCATION" invoke-virtual {p0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v2 if-nez v2, :cond_a goto :goto_0 :cond_a move v1, v0 :goto_0 packed-switch v1, :pswitch_data_0 new-array v1, v3, [Ljava/lang/String; aput-object p0, v1, v0 return-object v1 .line 84 :pswitch_0 sget-object p0, Lcom/blankj/utilcode/constant/PermissionConstants;->GROUP_CAMERA:[Ljava/lang/String; return-object p0 .line 90 :pswitch_1 sget-object p0, Lcom/blankj/utilcode/constant/PermissionConstants;->GROUP_MICROPHONE:[Ljava/lang/String; return-object p0 .line 82 :pswitch_2 sget-object p0, Lcom/blankj/utilcode/constant/PermissionConstants;->GROUP_CALENDAR:[Ljava/lang/String; return-object p0 .line 86 :pswitch_3 sget-object p0, Lcom/blankj/utilcode/constant/PermissionConstants;->GROUP_CONTACTS:[Ljava/lang/String; return-object p0 .line 104 :pswitch_4 sget-object p0, Lcom/blankj/utilcode/constant/PermissionConstants;->GROUP_ACTIVITY_RECOGNITION:[Ljava/lang/String; return-object p0 .line 92 :pswitch_5 sget p0, Landroid/os/Build$VERSION;->SDK_INT:I const/16 v0, 0x1a if-ge p0, v0, :cond_b .line 93 sget-object p0, Lcom/blankj/utilcode/constant/PermissionConstants;->GROUP_PHONE_BELOW_O:[Ljava/lang/String; return-object p0 .line 95 :cond_b sget-object p0, Lcom/blankj/utilcode/constant/PermissionConstants;->GROUP_PHONE:[Ljava/lang/String; return-object p0 .line 100 :pswitch_6 sget-object p0, Lcom/blankj/utilcode/constant/PermissionConstants;->GROUP_SMS:[Ljava/lang/String; return-object p0 .line 102 :pswitch_7 sget-object p0, Lcom/blankj/utilcode/constant/PermissionConstants;->GROUP_STORAGE:[Ljava/lang/String; return-object p0 .line 98 :pswitch_8 sget-object p0, Lcom/blankj/utilcode/constant/PermissionConstants;->GROUP_SENSORS:[Ljava/lang/String; return-object p0 .line 88 :pswitch_9 sget-object p0, Lcom/blankj/utilcode/constant/PermissionConstants;->GROUP_LOCATION:[Ljava/lang/String; return-object p0 :sswitch_data_0 .sparse-switch -0x600a704b -> :sswitch_9 -0x5f2a5027 -> :sswitch_8 -0x458431a5 -> :sswitch_7 0x14139 -> :sswitch_6 0x489454e -> :sswitch_5 0x8623667 -> :sswitch_4 0xcd35053 -> :sswitch_3 0x2404eb3e -> :sswitch_2 0x6ea0852a -> :sswitch_1 0x760cb725 -> :sswitch_0 .end sparse-switch :pswitch_data_0 .packed-switch 0x0 :pswitch_9 :pswitch_8 :pswitch_7 :pswitch_6 :pswitch_5 :pswitch_4 :pswitch_3 :pswitch_2 :pswitch_1 :pswitch_0 .end packed-switch .end method