Autorisations Android

Les autorisations Android visent à protéger la vie privée d'un utilisateur Android. Elles invitent l'utilisateur lorsque des applications souhaitent accéder à des types de données sensibles, tels que des contacts ou des photos, et à des fonctionnalités système, telles que la localisation ou la détection des pas. Les utilisateurs accordent ces autorisations lorsqu'ils téléchargent votre application pour la première fois.

Si votre application a besoin d'accéder à l'un de ces types de données (un sous-ensemble de types de données Google Fit), demandez l'autorisation Android appropriée avant de demander les autorisations OAuth. (voir ci-dessous).

Exemple d'écran de consentement pour les autorisations Android
Figure 1.Écran de consentement des autorisations Android

Types de données nécessitant des autorisations Android

Pour accéder à ces types de données d'activité physique, vous devez demander l'autorisation Android ACTIVITY_RECOGNITION :

  • Pour enregistrer ces types de données:

    • com.google.step_count.delta
    • com.google.step_count.cumulative
    • com.google.step_count.cadence
    • com.google.activity.segment
    • com.google.calories.expended
  • Pour lire ces types de données:

    • com.google.step_count.delta
    • com.google.step_count.cumulative
    • com.google.step_count.cadence
    • com.google.activity.segment
    • com.google.activity.exercise

Pour accéder à ces types de données, vous devez demander l'autorisation Android ACCESS_FINE_LOCATION:

  • Pour lire ces types de données :
    • com.google.distance.delta
    • com.google.location.sample
    • com.google.location.bounding_box
    • com.google.speed

Pour enregistrer les types de données suivants, vous devez demander l'autorisation Android BODY_SENSORS :

  • com.google.heart_rate.bpm

Demander des autorisations Android

Découvrez comment demander les autorisations Android, l'autorisation de reconnaissance de l'activité physique, l'autorisation de géolocalisation précise et l'autorisation de capteurs corporels.

Pour accéder aux types de données ci-dessus avec les API Google Fit, vous devez mettre en œuvre une logique permettant de gérer les demandes d'autorisations Android pour Android 10 et les versions antérieures d'Android. Ces exemples utilisent l'autorisation ACTIVITY_RECOGNITION.

Android 10

Pour que votre application puisse cibler le niveau d'API 29 ou supérieur, demandez l'autorisation à l'utilisateur et enregistrez-la dans le fichier manifeste de l'application.

  1. Ajoutez l'autorisation au fichier manifeste.

    <uses-permission android:name="android.permission.ACTIVITY_RECOGNITION"/>
    
  2. Vérifiez si l'autorisation est accordée :

    if (ContextCompat.checkSelfPermission(thisActivity, Manifest.permission.ACTIVITY_RECOGNITION)
              != PackageManager.PERMISSION_GRANTED) {
          // Permission is not granted
    }
    
  3. Si l'autorisation n'est pas déjà accordée, demandez-la:

    ActivityCompat.requestPermissions(thisActivity,
                arrayOf(Manifest.permission.ACTIVITY_RECOGNITION),
                MY_PERMISSIONS_REQUEST_ACTIVITY_RECOGNITION)
    

Android 9 ou version antérieure

Pour que votre application puisse cibler le niveau d'API 28 ou inférieur:

  1. Demandez l'autorisation com.google.android.gms.permission.ACTIVITY_RECOGNITION.

  2. Ajoutez l'autorisation au fichier manifeste.

    <uses-permission android:name="android.gms.permission.ACTIVITY_RECOGNITION"/>