Android-Berechtigungen

Android-Berechtigungen sollen die Privatsphäre von Android-Nutzern schützen. Sie fordern dazu auf, wenn Apps auf Datentypen für sensible Daten wie Kontakte oder Fotos zugreifen möchten, und Systemfunktionen wie die Standort- oder Schritterkennung. Nutzer gewähren diese Berechtigungen wenn du deine App zum ersten Mal herunterlädst.

Ob Ihre App Zugriff auf einen dieser Datentypen benötigt (Teil der Google Fit-Datentypen) ab, fordern Sie die entsprechenden Android-Berechtigung, bevor Sie die OAuth-Berechtigungen anfordern. Weitere Informationen finden Sie unten.

Beispiel für den Zustimmungsbildschirm für Android-Berechtigungen
Abbildung 1: Der Android-Zustimmungsbildschirm für Berechtigungen

Datentypen, für die Android-Berechtigungen erforderlich sind

Für den Zugriff auf diese Datentypen zu körperlichen Aktivitäten musst du die Android-Berechtigung ACTIVITY_RECOGNITION anfordern:

  • So zeichnen Sie diese Datentypen auf:

    • com.google.step_count.delta
    • com.google.step_count.cumulative
    • com.google.step_count.cadence
    • com.google.activity.segment
    • com.google.calories.expended
  • So lesen Sie diese Datentypen:

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

Wenn Sie auf diese Datentypen zugreifen möchten, müssen Sie die Android-Berechtigung ACCESS_FINE_LOCATION anfordern:

  • So lesen Sie diese Datentypen:
    • com.google.distance.delta
    • com.google.location.sample
    • com.google.location.bounding_box
    • com.google.speed

Wenn Sie diese Datentypen aufzeichnen möchten, müssen Sie die Android-Berechtigung BODY_SENSORS anfordern:

  • com.google.heart_rate.bpm

Android-Berechtigungen anfordern

Weitere Informationen zum Anfordern von Android-Berechtigungen, der Berechtigung zur Erkennung physischer Aktivitäten, die Berechtigung zur Standortermittlung und Berechtigung für Körpersensoren.

Wenn Sie mit den Google Fit APIs auf die oben genannten Datentypen zugreifen möchten, müssen Sie eine Logik implementieren, die die Anforderung von Android-Berechtigungen sowohl für Android 10 als auch für frühere Android-Versionen abwickelt. In diesen Beispielen wird die Berechtigung ACTIVITY_RECOGNITION verwendet.

Android 10

Damit deine App auf API-Level 29 oder höher ausgerichtet werden kann, musst du die Berechtigung vom und registriere die Berechtigung in der Manifestdatei der Anwendung.

  1. Fügen Sie die Berechtigung zur Manifestdatei hinzu.

    <uses-permission android:name="android.permission.ACTIVITY_RECOGNITION"/>
    
  2. Prüfen Sie, ob die Berechtigung gewährt wurde:

    if (ContextCompat.checkSelfPermission(thisActivity, Manifest.permission.ACTIVITY_RECOGNITION)
              != PackageManager.PERMISSION_GRANTED) {
          // Permission is not granted
    }
    
  3. Wenn die Berechtigung noch nicht erteilt wurde, fordern Sie sie an:

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

Android 9 und niedriger

So können Sie Ihre App auf API-Level 28 oder niedriger ausrichten:

  1. Fordern Sie die Berechtigung com.google.android.gms.permission.ACTIVITY_RECOGNITION an.

  2. Fügen Sie die Berechtigung der Manifestdatei hinzu.

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