Deklarieren Sie geeignete Berechtigungen

Für Gesundheitsdienste unter Wear OS werden die folgenden Berechtigungen verwendet:

In der folgenden Tabelle sehen Sie, welche Berechtigungen für Ihre App erforderlich sind, je nachdem, welche Arten von Fitnessdaten Sie Nutzern präsentieren möchten. Beachten Sie die Grundprinzipien für das Anfordern von Berechtigungen, einschließlich des Anforderns von Berechtigungen im Kontext.

Wenn Ihre App auf API-Level 36 oder höher ausgerichtet ist und PassiveMonitoringClient verwendet, um im Hintergrund auf Informationen zu Körpersensoren zuzugreifen, fordern Sie die Berechtigung READ_HEALTH_DATA_IN_BACKGROUND an. Wenn Ihre App auf ein API-Level zwischen 33 und 35 ausgerichtet ist, fordern Sie stattdessen die Berechtigungen BODY_SENSORS und BODY_SENSORS_BACKGROUND an.

Datentyp Berechtigung
CALORIES
CALORIES_DAILY
DISTANCE_DAILY
DECLINE_DISTANCE
DISTANCE
ELEVATION_GAIN
ELEVATION_LOSS
FLAT_GROUND_DISTANCE
FLOORS
FLOORS_DAILY
GOLF_SHOT_COUNT
INCLINE_DISTANCE
PACE
REP_COUNT
RUNNING_STEPS
SPEED
STEPS
STEPS_DAILY
STEPS_PER_MINUTE
SWIMMING_LAP_COUNT
SWIMMING_STROKES
CALORIES_TOTAL
WALKING_STEPS
UserActivityInfo
UserActivityState
ACTIVITY_RECOGNITION
HEART_RATE_BPM READ_HEART_RATE
ABSOLUTE_ELEVATION
LOCATION
ACCESS_FINE_LOCATION

Migration zur Unterstützung von API-Level 36

Wenn Ihre App auf Wear OS 6 (API-Level 36) oder höher ausgerichtet ist, führen Sie die folgenden Schritte aus, um Ihre App so zu migrieren, dass sie die neuesten Versionen der Wear OS-Plattform unterstützt:

  1. Fügen Sie in Ihrer Manifestdatei die maxSdkVersion für die alte Berechtigung sowie die moderne Berechtigung READ_HEART_RATE hinzu:

    <uses-permission android:name="android.permission.BODY_SENSORS"
                     android:maxSdkVersion="35" />
    <uses-permission android:name="android.permission.health.READ_HEART_RATE" />
    
  2. Wenn Ihre App Zugriff auf Körpersensoren benötigt, während sie im Hintergrund ausgeführt wird, fügen Sie die maxSdkVersion für die alte Berechtigung für den Hintergrund und die moderne Berechtigung READ_HEALTH_DATA_IN_BACKGROUND hinzu:

    <uses-permission android:name="android.permission.BODY_SENSORS_BACKGROUND"
                     android:maxSdkVersion="35" />
    <uses-permission android:name="android.permission.health.READ_HEALTH_DATA_IN_BACKGROUND" />
    
  3. Fordern Sie die Berechtigung für die Herzfrequenz an und prüfen Sie, ob sie überall erteilt wird, wo Ihre App nach den Berechtigungen BODY_SENSOR und BODY_SENSORS_BACKGROUND sucht. Filtern Sie dabei nach der Wear OS-Version. Beispiel:

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.BAKLAVA) {
        this.add(HealthPermissions.READ_HEART_RATE)
    }