Servizi sanitari su Wear OS

Wear OS 3 e versioni successive includono un servizio chiamato Servizi per la salute. Health Services funge da intermediario per i vari sensori e gli algoritmi correlati sul dispositivo per fornire alle app dati di alta qualità relativi ad attività, allenamento e salute.

Per esempi di app per il fitness, consulta il repository di esempio di Servizi per la salute su GitHub.

In che modo Health Services aiuta gli sviluppatori di app

Senza i servizi sanitari, le app devono connettersi a uno o più sensori, configurarli in modo appropriato, ricevere i dati grezzi dei sensori e utilizzare i propri algoritmi per ricavare informazioni significative. Ad esempio, un'app potrebbe registrarsi per gli aggiornamenti di Sensor.TYPE_PRESSURE per ottenere la pressione atmosferica attuale, utilizzarla per calcolare l'altitudine attuale e aggregare questi dati nel tempo per mostrare i cambiamenti di elevazione durante la sessione di attività di un utente.

Health Services configura automaticamente tutti i sensori relativi a fitness e salute in modo appropriato per il caso d'uso, raccoglie i dati dei sensori e calcola metriche come frequenza cardiaca, distanza, calorie, altitudine, piani, velocità, andatura e altro ancora. Le app possono registrarsi per questi dati direttamente da Servizi per la salute.

Diagramma dell'architettura di Health Services
Figura 1: architettura dei servizi sanitari

Ecco alcuni vantaggi dell'utilizzo di Servizi per la salute:

  • Sfrutta algoritmi potenti eseguiti in modo nativo sulla piattaforma.
  • Risparmia batteria utilizzando configurazioni dei sensori di Servizi per la salute ottimizzate per l'efficienza energetica.
  • Prepara un'app per i dispositivi Wear 3 e versioni successive. L'API Health Services è coerente su tutti i dispositivi Wear 3+, il che semplifica l'aggiornamento dell'app.
  • Verifica la coerenza dei dati in tutte le applicazioni sullo stesso dispositivo utilizzando calcoli della piattaforma standardizzati.
  • Consente esperienze basate sull'attività, inclusa la possibilità di rilevare un allenamento in corso iniziato da un'altra app.

Questi vantaggi consentono agli sviluppatori di concentrarsi sullo sviluppo di funzionalità ed esperienze utente uniche, affidandosi alla piattaforma per fornire metriche solide e coerenti in modo efficiente dal punto di vista energetico.

Concetti su Servizi per la salute

Tieni presente i seguenti concetti durante lo sviluppo con Health Services.

Tipi di dati

Servizi per la salute offre una varietà di dati raccolti e aggiornati continuamente da tutte le fonti disponibili sul dispositivo. I dati rientrano in due categorie generali: dati campionati in un singolo momento, ad esempio HEART_RATE_BPM, e dati raccolti in un intervallo di tempo, ad esempio DISTANCE.

Per saperne di più, consulta l'elenco completo dei tipi di dati.

Eventi

Le app ricevono eventi quando l'utente raggiunge un determinato stato o evento obiettivo. Ad esempio, un utente può registrare un obiettivo di distanza all'interno di un'app di allenamento e poi l'app lo avvisa quando ha percorso una determinata distanza. In alternativa, utilizza un obiettivo passivo per situazioni come il raggiungimento di un determinato numero di passi o l'addormentarsi.

Per ulteriori informazioni, vedi Obiettivi di allenamento e Obiettivi passivi.

Tipi di allenamento

Health Services considera l'attività fisica una funzionalità di prima classe e supporta una moltitudine di tipi di attività fisica, come corsa o sci. Mentre un allenamento è in corso, i servizi per la salute possono raccogliere metriche sui tipi di dati selezionati e inviarle all'app che gestisce l'allenamento.

Per saperne di più, consulta l'elenco completo dei tipi di allenamento.

Creare app utilizzando Health Services

Crea app utilizzando Health Services come descritto nelle sezioni seguenti.

Esperienze passive

Utilizzando PassiveMonitoringClient, la tua app implementa un PassiveListenerService che riceve aggiornamenti su un tipo di dati o un evento. È adatta a esperienze di lunga durata in cui gli aggiornamenti dei dati sono relativamente infrequenti.

Per saperne di più, consulta Aggiornamenti passivi dei dati.

Esperienze attive

Utilizzando MeasureClient, la tua app registra i listener per ricevere aggiornamenti rapidi dei dati. È adatta per esperienze di breve durata, ad esempio mentre l'utente guarda l'UI della tua app. Cerca di ridurre al minimo il tempo che la tua app trascorre con un listener registrato, perché aumenta la frequenza di campionamento del sensore e quindi il consumo energetico. Questa API non è pensata per l'acquisizione in background o il monitoraggio dell'allenamento.

Per ulteriori informazioni, consulta Eseguire misurazioni spot dell'integrità con MeasureClient.

Utilizzando ExerciseClient, la tua app può gestire l'allenamento di un utente, impostare obiettivi di esercizio e ascoltare gli aggiornamenti sullo stato attuale dell'esercizio. La tua app può anche ricevere aggiornamenti rapidi dei dati tramite questa API, a condizione che l'allenamento appartenga alla tua app. ExerciseClient può essere utilizzata per app come un'app di corsa che consente agli utenti di registrare la propria corsa, visualizza le metriche in tempo reale sul dispositivo e registra i dati per ulteriori analisi.

Per saperne di più, consulta Registrare un allenamento con ExerciseClient.

Testare con dati sintetici

Per verificare che la tua app riceva gli aggiornamenti dei dati da Servizi per la salute, imposta manualmente il tuo dispositivo in modo che emetta dati come se un utente stesse facendo attività fisica.

Per ulteriori informazioni, vedi Utilizzare dati sintetici con i servizi sanitari.