Vai al contenuto

Iniziare

  1. Installa il plugin

    Terminal window
    npm i @capgo/capacitor-health
  2. Sincronizza i progetti nativi

    Terminal window
    npx cap sync
  • Apri ios/App/App.xcworkspace in 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>

I dati sanitari sono alimentati da Health Connect. Assicurati che:

  • minSdkVersion sia 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'],
});
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);
});
await Health.saveSample({
dataType: 'weight',
value: 74.6,
startDate: new Date().toISOString(),
});
  • 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à.