Langue

Fragment.RequestPermissions(String[], Int32) Méthode

Définition

Demande des autorisations à accorder à cette application.

[Android.Runtime.Register("requestPermissions", "([Ljava/lang/String;I)V", "", ApiSince=23)]
public void RequestPermissions(string[] permissions, int requestCode);
[<Android.Runtime.Register("requestPermissions", "([Ljava/lang/String;I)V", "", ApiSince=23)>]
member this.RequestPermissions : string[] * int -> unit

Paramètres

permissions
String[]

Autorisations demandées. Faut-il que je ne soit pas null et non vide.

requestCode
Int32

Code de requête spécifique de l’application à mettre en correspondance avec un résultat signalé à #onRequestPermissionsResult(int, String[], int[]). Doit être >= 0.

Attributs

Remarques

Demande des autorisations à accorder à cette application. Ces autorisations doivent être demandées dans votre manifeste, elles ne doivent pas être accordées à votre application, et elles doivent avoir un niveau de protection PROTECTION_DANGEROUS dangereux, qu’elles soient déclarées par la plateforme ou par une application tierce. Les autorisations normales PermissionInfo.PROTECTION_NORMAL sont accordées au moment de l’installation si elles sont demandées dans le manifeste. Les autorisations de signature PermissionInfo.PROTECTION_SIGNATURE sont accordées au moment de l’installation si elles sont demandées dans le manifeste et que la signature de votre application correspond à la signature de l’application déclarant les autorisations.

Appel de shouldShowRequestPermissionRationale(String) avant d’appeler cette API pour vérifier si le système recommande d’afficher une interface utilisateur logique avant de demander une autorisation.

Si votre application n’a pas les autorisations demandées, l’utilisateur reçoit l’interface utilisateur pour l’accepter. Une fois que l’utilisateur a accepté ou rejeté les autorisations demandées, vous recevrez un rappel sur onRequestPermissionsResult(int,String[],int[]) signalant si les autorisations ont été accordées ou non.

Notez que la demande d’autorisation ne garantit pas qu’elle sera accordée et que votre application doit pouvoir s’exécuter sans avoir cette autorisation.

Cette méthode peut démarrer une activité permettant à l’utilisateur de choisir les autorisations à accorder et celles à rejeter. Par conséquent, vous devez être préparé à ce que votre activité puisse être suspendue et reprise. En outre, l’octroi d’autorisations peut nécessiter un redémarrage de votre application. Dans ce cas, le système recréera la pile d’activités avant de remettre le résultat à onRequestPermissionsResult(int,String[],int[]).

Lorsque vous vérifiez si vous disposez d’une autorisation, vous devez utiliser android.content.Context.checkSelfPermission(String).

L’appel de cette API pour les autorisations déjà accordées à votre application affiche l’interface utilisateur à l’utilisateur pour décider si l’application peut toujours contenir ces autorisations. Cela peut être utile si la façon dont votre application utilise les données protégée par les autorisations change considérablement.

Vous ne pouvez pas demander une autorisation si votre activité définit noHistory sur true, car dans ce cas, l’activité ne reçoit pas de rappels de résultats, notamment onRequestPermissionsResult(int,String[],int[]).

Voir aussi :

Référence Android pour android.app.Fragment.requestPermissions.

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 à