Autorizzazioni Android

Le autorizzazioni Android mirano a proteggere la privacy di un utente Android. Chiedono all'utente se le app vogliono accedere a tipi di dati sensibili come contatti o foto e a funzionalità di sistema come la posizione o il rilevamento dei passi. Gli utenti concedono queste autorizzazioni al primo download dell'app.

Se la tua app deve accedere a uno di questi tipi di dati (un sottoinsieme dei tipi di dati di Google Fit), richiedi l'autorizzazione Android pertinente prima di richiedere le autorizzazioni OAuth. Consulta quanto riportato di seguito.

Esempio della schermata per il consenso per le autorizzazioni Android
Figura 1.La schermata per il consenso delle autorizzazioni Android.

Tipi di dati che richiedono autorizzazioni Android

Per accedere a questi tipi di dati sull'attività fisica, devi richiedere l'autorizzazione Android ACTIVITY_RECOGNITION:

  • Per registrare questi tipi di dati:

    • com.google.step_count.delta
    • com.google.step_count.cumulative
    • com.google.step_count.cadence
    • com.google.activity.segment
    • com.google.calories.expended
  • Per leggere questi tipi di dati:

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

Per accedere a questi tipi di dati, devi richiedere l'autorizzazione Android ACCESS_FINE_LOCATION:

  • Per leggere questi tipi di dati:
    • com.google.distance.delta
    • com.google.location.sample
    • com.google.location.bounding_box
    • com.google.speed

Per registrare questi tipi di dati, devi richiedere l'autorizzazione Android BODY_SENSORS:

  • com.google.heart_rate.bpm

Richiedere autorizzazioni Android

Scopri di più su come richiedere le autorizzazioni Android, l' autorizzazione per il riconoscimento dell'attività fisica, l' autorizzazione di accesso alla posizione precisa e l'autorizzazione per i sensori del corpo.

Per accedere ai tipi di dati sopra indicati con le API Google Fit, devi implementare la logica per gestire la richiesta di autorizzazioni Android sia per Android 10 sia per le versioni precedenti di Android. Questi esempi utilizzano l'autorizzazione ACTIVITY_RECOGNITION.

Android 10

Affinché la tua app possa avere come livello API target il livello 29 o superiore, richiedi l'autorizzazione all'utente e registrala nel file manifest dell'applicazione.

  1. Aggiungi l'autorizzazione al file manifest.

    <uses-permission android:name="android.permission.ACTIVITY_RECOGNITION"/>
    
  2. Verifica se l'autorizzazione è stata concessa:

    if (ContextCompat.checkSelfPermission(thisActivity, Manifest.permission.ACTIVITY_RECOGNITION)
              != PackageManager.PERMISSION_GRANTED) {
          // Permission is not granted
    }
    
  3. Se l'autorizzazione non è stata ancora concessa, richiedila:

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

Android 9 e versioni precedenti

Affinché la tua app possa avere come target il livello API 28 o inferiore:

  1. Richiedi l'autorizzazione com.google.android.gms.permission.ACTIVITY_RECOGNITION.

  2. Aggiungi l'autorizzazione al file manifest.

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