DevicePolicyManager.SetPermissionGrantState Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Définit l’état d’octroi d’une autorisation d’exécution pour une application spécifique.
[Android.Runtime.Register("setPermissionGrantState", "(Landroid/content/ComponentName;Ljava/lang/String;Ljava/lang/String;I)Z", "GetSetPermissionGrantState_Landroid_content_ComponentName_Ljava_lang_String_Ljava_lang_String_IHandler", ApiSince=23)]
[Android.Runtime.RequiresPermission("android.permission.MANAGE_DEVICE_POLICY_RUNTIME_PERMISSIONS")]
public virtual bool SetPermissionGrantState(Android.Content.ComponentName? admin, string packageName, string permission, Android.App.Admin.PermissionGrantState grantState);
[<Android.Runtime.Register("setPermissionGrantState", "(Landroid/content/ComponentName;Ljava/lang/String;Ljava/lang/String;I)Z", "GetSetPermissionGrantState_Landroid_content_ComponentName_Ljava_lang_String_Ljava_lang_String_IHandler", ApiSince=23)>]
[<Android.Runtime.RequiresPermission("android.permission.MANAGE_DEVICE_POLICY_RUNTIME_PERMISSIONS")>]
abstract member SetPermissionGrantState : Android.Content.ComponentName * string * string * Android.App.Admin.PermissionGrantState -> bool
override this.SetPermissionGrantState : Android.Content.ComponentName * string * string * Android.App.Admin.PermissionGrantState -> bool
Paramètres
- admin
- ComponentName
Auquel DeviceAdminReceiver cette requête est associée. Null si l’appelant n’est pas un administrateur d’appareil.
- packageName
- String
Application à accorder ou révoquer une autorisation.
- permission
- String
Autorisation d’accorder ou de révoquer.
- grantState
- PermissionGrantState
État d’octroi d’autorisation qui est l’un des #PERMISSION_GRANT_STATE_DENIED, #PERMISSION_GRANT_STATE_DEFAULT, #PERMISSION_GRANT_STATE_GRANTED,
Retours
si l’autorisation a été accordée ou révoquée.
- Attributs
Remarques
Définit l’état d’octroi d’une autorisation d’exécution pour une application spécifique. L’état peut être #PERMISSION_GRANT_STATE_DEFAULT default dans lequel un utilisateur peut le gérer via l’interface utilisateur, #PERMISSION_GRANT_STATE_DENIED denieddans lequel l’autorisation est refusée et l’utilisateur ne peut pas le gérer via l’interface utilisateur, et #PERMISSION_GRANT_STATE_GRANTED granted dans lequel l’autorisation est accordée et l’utilisateur ne peut pas le gérer via l’interface utilisateur. Cette méthode peut uniquement être appelée par un propriétaire de profil, un propriétaire de l’appareil ou un délégué en fonction de l’étendue #DELEGATION_PERMISSION_GRANT via #setDelegatedScopes.
Notez que l’utilisateur ne peut pas gérer d’autres autorisations dans le groupe concerné par le biais de l’interface utilisateur et que son état accordé sera conservé comme valeur actuelle. Par conséquent, il est recommandé de définir l’état d’octroi de toutes les autorisations dans le groupe concerné.
La définition de l’état d’octroi pour #PERMISSION_GRANT_STATE_DEFAULT default ne pas révoquer l’autorisation. Elle conserve l’octroi précédent, le cas échéant.
Les administrateurs d’appareils avec un
Les administrateurs disposant d’un targetSdkVersion &ge ; android.os.Build.VERSION_CODES#Q peuvent accorder et révoquer des autorisations de toutes les applications. Comme pour l’utilisateur qui révoue une autorisation d’une application créée avec un
REMARQUE : Sur les appareils exécutant android.os.Build.VERSION_CODES#S et versions ultérieures, le contrôle sur les autorisations suivantes, liées aux capteurs, est restreint : <ul<>li>Manifest.permission.ACCESS_FINE_LOCATION</><li li>Manifest.permission.ACCESS_BACKGROUND_LOCATION</li li><Manifest.permission.ACCESS_COARSE_LOCATION></li><li>manifest.permission.CAMERA</li li><>Manifest.permission.RECORD_AUDIO</li><> li li<Manifest.permission.RECORD_BACKGROUND_AUDIO/li><li>Manifest.permission.ACTIVITY_RECOGNITION</li li><>Manifest.permission.BODY_SENSORS</li/ul<>> Sur les appareils en cours d’exécutionandroid.os.Build.VERSION_CODES#BAKLAVA, ils android.health.connect.HealthPermissions sont également inclus dans la liste restreinte.
Un propriétaire de profil peut ne pas accorder ces autorisations (c’est-à-dire appeler cette méthode avec l’une des autorisations répertoriées ci-dessus et grantState de ), #PERMISSION_GRANT_STATE_GRANTEDmais peut les refuser.
Par défaut, un propriétaire d’appareil peut continuer à accorder ces autorisations. Toutefois, pour un contrôle utilisateur accru, l’administrateur peut refuser de contrôler les octrois pour ces autorisations en incluant #EXTRA_PROVISIONING_SENSORS_PERMISSION_GRANT_OPT_OUT les paramètres d’approvisionnement. Dans ce cas, le contrôle du propriétaire de l’appareil sera limité au refus de ces autorisations.
Lorsque les autorisations liées au capteur ne sont pas accordées en raison des cas ci-dessus, l’appel de cette méthode pour accorder ces autorisations échoue silencieusement, si les administrateurs de l’appareil sont générés avec targetSdkVersion >= android.os.Build.VERSION_CODES#VANILLA_ICE_CREAM, cette méthode lève un SecurityException.
REMARQUE : Sur les appareils en cours d’exécution android.os.Build.VERSION_CODES#S et versions ultérieures, le contrôle des autorisations suivantes est limité pour les propriétaires de profils managés : <ul<>li>Manifest.permission.READ_SMS</li></ul>
Un propriétaire de profil managé peut ne pas accorder ces autorisations (c’est-à-dire appeler cette méthode avec l’une des autorisations répertoriées ci-dessus et grantState de #PERMISSION_GRANT_STATE_GRANTED), mais peut les refuser.
Les tentatives effectuées par l’administrateur pour accorder ces autorisations, lorsque l’administrateur est restreint, sont ignorées en mode silencieux (aucune exception n’est levée).
Le contrôle des autorisations suivantes est limité pour les propriétaires de profils managés : <ul<>li>Manifest.permission.READ_SMS</li></ul>
Un propriétaire de profil managé peut ne pas accorder ces autorisations (c’est-à-dire appeler cette méthode avec l’une des autorisations répertoriées ci-dessus et grantState de #PERMISSION_GRANT_STATE_GRANTED), mais peut les refuser.
Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.