Langue

DevicePolicyManager.SetPermissionGrantState Méthode

Définition

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 < ne peuvent pas accorder et révoquer des autorisations pour les applications créées 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 < l’opération d’application correspondant à l’autorisation est définie sur , mais l’autorisation reste accordée.

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 < . Si elles sont générées 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.

Java documentation pour android.app.admin.DevicePolicyManager.setPermissionGrantState(android.content.ComponentName, java.lang.String, java.lang.String, int).

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.

S’applique à