Declarar as permissões apropriadas

Os Recursos de saúde no Wear OS usam as seguintes permissões distintas:

Consulte a tabela a seguir para determinar quais permissões são necessárias para seu app com base nos tipos de dados de condicionamento físico que você quer apresentar aos usuários. Siga os princípios básicos para solicitar permissões, incluindo a solicitação de permissões no contexto.

Se o app for destinado ao nível 36 da API ou mais recente e usar PassiveMonitoringClient para acessar informações do sensor corporal em segundo plano, solicite a permissão READ_HEALTH_DATA_IN_BACKGROUND. Se o app for direcionado a um nível de API entre 33 e 35, solicite as permissões BODY_SENSORS e BODY_SENSORS_BACKGROUND.

Tipo de dado Permissão
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

Migrar para oferecer suporte ao nível 36 da API

Se o app for direcionado ao Wear OS 6 (nível 36 da API) ou mais recente, siga estas etapas para migrar o app e oferecer suporte às versões mais recentes da plataforma Wear OS:

  1. No arquivo de manifesto, adicione o maxSdkVersion para a permissão legada e a permissão READ_HEART_RATE moderna:

    <uses-permission android:name="android.permission.BODY_SENSORS"
                     android:maxSdkVersion="35" />
    <uses-permission android:name="android.permission.health.READ_HEART_RATE" />
    
  2. Se o app precisar acessar sensores corporais durante a execução em segundo plano, adicione a maxSdkVersion para a permissão legada em segundo plano e a permissão moderna READ_HEALTH_DATA_IN_BACKGROUND:

    <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. Solicite e confirme que a permissão de frequência cardíaca é concedida em todos os lugares em que o app verifica a permissão BODY_SENSOR e BODY_SENSORS_BACKGROUND, filtrando por versão do Wear OS. Exemplo:

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