Health Services on Wear OS uses the following distinct permissions:

- [`READ_HEART_RATE`](https://developer.android.com/reference/android/health/connect/HealthPermissions#READ_HEART_RATE)for reading heart rate information.
- [`ACTIVITY_RECOGNITION`](https://developer.android.com/reference/android/Manifest.permission#ACTIVITY_RECOGNITION)
- [`ACCESS_FINE_LOCATION`](https://developer.android.com/reference/android/Manifest.permission#ACCESS_FINE_LOCATION)
- [`BODY_SENSORS`](https://developer.android.com/reference/android/Manifest.permission#BODY_SENSORS)on Wear OS 5.1 (API level 35) and lower
- [`BODY_SENSORS_BACKGROUND`](https://developer.android.com/reference/android/Manifest.permission#BODY_SENSORS_BACKGROUND)between Wear OS 4 (API level 33) and Wear OS 5.1 (API level 35), inclusive

| **Note:** For apps that target Wear OS 6 Developer Preview (API level 36) or higher, any API previously requiring`BODY_SENSORS`or`BODY_SENSORS_BACKGROUND`requires the corresponding`android.permissions.health`permission. See the[migration steps](https://developer.android.com/health-and-fitness/health-services/permissions#migrate-support-api-36)section for more information.

Consult the following table to determine which permissions are necessary for your app, based on the types of fitness data that you want to present to users. Make sure to follow the basic principles for[requesting permissions](https://developer.android.com/training/permissions/requesting), including asking for permissions in context.

If your app targets API level 36 or higher, and if it uses[`PassiveMonitoringClient`](https://developer.android.com/reference/kotlin/androidx/health/services/client/PassiveMonitoringClient)to access body sensor information in the background, request the[`READ_HEALTH_DATA_IN_BACKGROUND`](https://developer.android.com/reference/android/health/connect/HealthPermissions#READ_HEALTH_DATA_IN_BACKGROUND)permission. If your app targets an API level between 33 and 35 inclusive, request both the`BODY_SENSORS`and`BODY_SENSORS_BACKGROUND`permissions instead.
| **Note:** If you specify`isGpsEnabled = true`in your`ExerciseConfig`, Health Services also uses GNSS to improve the accuracy of metrics like distance, speed, and pace, but requires the user to grant the`ACCESS_FINE_LOCATION`permission to your app.

|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               Data type                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |       Permission       |
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------|
| [`CALORIES`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#CALORIES) [`CALORIES_DAILY`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#DISTANCE_DAILY) [`DISTANCE_DAILY`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#DISTANCE_DAILY) [`DECLINE_DISTANCE`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#DECLINE_DISTANCE) [`DISTANCE`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#DISTANCE) [`ELEVATION_GAIN`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#ELEVATION_GAIN) [`ELEVATION_LOSS`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#ELEVATION_LOSS) [`FLAT_GROUND_DISTANCE`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#FLAT_GROUND_DISTANCE) [`FLOORS`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#FLOORS) [`FLOORS_DAILY`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#FLOORS_DAILY) [`GOLF_SHOT_COUNT`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#GOLF_SHOT_COUNT) [`INCLINE_DISTANCE`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#INCLINE_DISTANCE) [`PACE`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#PACE) [`REP_COUNT`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#REP_COUNT) [`RUNNING_STEPS`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#RUNNING_STEPS) [`SPEED`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#SPEED) [`STEPS`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#STEPS) [`STEPS_DAILY`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#STEPS_DAILY) [`STEPS_PER_MINUTE`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#STEPS_PER_MINUTE) [`SWIMMING_LAP_COUNT`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#SWIMMING_LAP_COUNT) [`SWIMMING_STROKES`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#SWIMMING_STROKES) [`CALORIES_TOTAL`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#CALORIES_TOTAL) [`WALKING_STEPS`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#WALKING_STEPS) [`UserActivityInfo`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/UserActivityInfo) [`UserActivityState`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/UserActivityState) | `ACTIVITY_RECOGNITION` |
| [`HEART_RATE_BPM`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#HEART_RATE_BPM)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       | `READ_HEART_RATE`      |
| [`ABSOLUTE_ELEVATION`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#ABSOLUTE_ELEVATION) [`LOCATION`](https://developer.android.com/reference/kotlin/androidx/health/services/client/data/DataType#LOCATION)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | `ACCESS_FINE_LOCATION` |

## Migrate to support API level 36

If your app targets Wear OS 6 (API level 36) or higher, follow these steps to migrate your app to supporting the latest versions of the Wear OS platform:

1. In your manifest file, add the`maxSdkVersion`for the legacy permission, as well as the modern`READ_HEART_RATE`permission:

       <uses-permission android:name="android.permission.BODY_SENSORS"
                        android:maxSdkVersion="35" />
       <uses-permission android:name="android.permission.health.READ_HEART_RATE" />

2. If your app requires access to body sensors while running in the background, add the`maxSdkVersion`for the legacy background permission, and add the modern`READ_HEALTH_DATA_IN_BACKGROUND`permission:

       <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. Request and confirm that the heart rate permission is granted everywhere your app checks for the`BODY_SENSOR`and`BODY_SENSORS_BACKGROUND`permission, filtering by Wear OS version. For example:

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