Iniziare
-
Installa il plugin
Terminal window npm i @capgo/capacitor-healthTerminal window pnpm add @capgo/capacitor-healthTerminal window yarn add @capgo/capacitor-healthTerminal window bun add @capgo/capacitor-health -
Sincronizza i progetti nativi
Terminal window npx cap syncTerminal window pnpm cap syncTerminal window yarn cap syncTerminal window bunx cap sync
Configurazione iOS
Section titled “Configurazione iOS”- Apri
ios/App/App.xcworkspacein Xcode e abilita la capacità HealthKit. - Fornisci descrizioni d’uso in
Info.plist:
<key>NSHealthShareUsageDescription</key><string>Questa app legge le tue metriche di salute per personalizzare la tua esperienza.</string><key>NSHealthUpdateUsageDescription</key><string>Questa app scrive dati sanitari che registri esplicitamente.</string>Configurazione Android
Section titled “Configurazione Android”I dati sanitari sono alimentati da Health Connect. Assicurati che:
minSdkVersionsia 26 o superiore (Capacitor 5 soddisfa già questo requisito).- Gli utenti abbiano Health Connect installato (Android 14+ lo include; le versioni precedenti richiedono un download dal Play Store).
- Guidi gli utenti attraverso l’interfaccia dei permessi di runtime quando richiedi l’accesso.
Verifica disponibilità e richiedi accesso
Section titled “Verifica disponibilità e richiedi accesso”import { Health } from '@capgo/capacitor-health';
const { available, reason } = await Health.isAvailable();if (!available) { console.warn('Health APIs unavailable:', reason); return;}
await Health.requestAuthorization({ read: ['steps', 'heartRate', 'weight'], write: ['weight'],});Leggi campioni
Section titled “Leggi campioni”const { samples } = await Health.readSamples({ dataType: 'steps', startDate: new Date(Date.now() - 7 * 24 * 60 * 60 * 1000).toISOString(), endDate: new Date().toISOString(), limit: 200,});
samples.forEach((sample) => { console.log(sample.value, sample.startDate, sample.endDate);});Scrivi campioni
Section titled “Scrivi campioni”await Health.saveSample({ dataType: 'weight', value: 74.6, startDate: new Date().toISOString(),});Gestione autorizzazioni
Section titled “Gestione autorizzazioni”- Usa
checkAuthorization()per verificare gli attuali ambiti di lettura/scrittura e regolare la tua interfaccia. - Gestisci i rifiuti con attenzione spiegando perché i dati migliorano l’esperienza e offrendo un nuovo tentativo.
- Rispetta sempre la privacy dell’utente e richiedi solo gli ambiti minimi richiesti dalla tua funzionalità.