Einstieg
Eine Einrichtungsanweisung mit den Installationsanweisungen und der vollständigen Markdown-Dokumentation für diesen Plugin kopieren.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-health`
Run the required Capacitor sync/update step after installation.
Read this markdown guide for the full setup steps: https://raw.githubusercontent.com/Cap-go/website/refs/heads/main/apps/docs/src/content/docs/docs/plugins/health/getting-started.mdx
Use that guide for platform-specific steps, native file edits, permissions, config changes, imports, and usage setup.
If that guide references other docs pages, read them too.
Installieren
Einrichtenbun add @capgo/capacitor-healthbunx cap syncImportieren
Abschnitt mit dem Titel „Importieren“import { Health } from '@capgo/capacitor-health';API Übersicht
Abschnitt mit dem Titel „API Übersicht“isAvailable
Abschnitt mit dem Titel „isAvailable“Returns whether the current platform supports the native health SDK.
import { Health } from '@capgo/capacitor-health';
await Health.isAvailable();requestAuthorization
Abschnitt mit dem Titel „requestAuthorization“Bittet um Lesen- und Schreibzugriff auf die bereitgestellten Datentypen.
import { Health } from '@capgo/capacitor-health';
await Health.requestAuthorization({} as AuthorizationOptions);checkAuthorization
Abschnitt mit dem Titel „checkAuthorization“Überprüft den Autorisierungsstatus für die bereitgestellten Datentypen ohne den Benutzer zu fragen.
import { Health } from '@capgo/capacitor-health';
await Health.checkAuthorization({} as AuthorizationOptions);readSamples
Abschnitt mit dem Titel „readSamples“Liest Samples für den angegebenen Datentyp innerhalb des angegebenen Zeitraums.
import { Health } from '@capgo/capacitor-health';
await Health.readSamples({} as QueryOptions);saveSample
Abschnitt mit dem Titel „saveSample“Schreibt einen einzelnen Sample in den native Health Store.
import { Health } from '@capgo/capacitor-health';
await Health.saveSample({} as WriteSampleOptions);openHealthConnectSettings
Abschnitt mit dem Titel „openHealthConnectSettings“Öffnet die Health Connect Einstellungen-Ansicht (nur Android). Bei iOS tut sich nichts.
Verwenden Sie dies, um den Benutzern die Verwaltung ihrer Health Connect-Berechtigungen zu ermöglichen oder Health Connect zu installieren, wenn es nicht verfügbar ist.
import { Health } from '@capgo/capacitor-health';
await Health.openHealthConnectSettings();showPrivacyPolicy
Sektion mit dem Titel “showPrivacyPolicy”Zeigt die Datenschutzrichtlinie der App für Health Connect (nur Android). Auf iOS hat diese Methode keine Auswirkungen.
Dies zeigt die gleiche Datenschutzrichtlinienansicht wie Health Connect an, als der Benutzer auf “Datenschutzrichtlinie” in der Berechtigungsdialogbox klickt.
Die Datenschutzrichtlinien-URL kann durch Hinzufügen eines String-Ressourcen mit dem Namen “health_connect_privacy_policy_url” in Ihrer apps strings.xml oder durch Platzieren einer HTML-Datei in www/privacypolicy.html in Ihren Assets konfiguriert werden.
import { Health } from '@capgo/capacitor-health';
await Health.showPrivacyPolicy();queryWorkouts
Sektion mit dem Titel “queryWorkouts”Abfragen von Workout-Sitzungen aus dem nativen Gesundheits-Store. Unterstützt auf iOS (HealthKit) und Android (Health Connect).
import { Health } from '@capgo/capacitor-health';
await Health.queryWorkouts({} as QueryWorkoutsOptions);queryAggregated
Sektion mit dem Titel “queryAggregated”Abfragen von aggregierten Gesundheitsdaten aus dem nativen Gesundheits-Store. Aggregiert Daten in Zeitblöcke (Stunde, Tag, Woche, Monat) mit Operationen wie Summe, Durchschnitt, Mindestwert oder Maximum. Dies ist effizienter als das Abrufen einzelner Beispiele für große Datumsbereiche.
Unterstützt auf iOS (HealthKit) und Android (Health Connect).
import { Health } from '@capgo/capacitor-health';
await Health.queryAggregated({} as QueryAggregatedOptions);Typenreferenz
Abschnitt mit dem Titel “Typenreferenz”AvailabilityResult
Abschnitt mit dem Titel “AvailabilityResult”export interface AvailabilityResult { available: boolean; /** Platform specific details (for debugging/diagnostics). */ platform?: 'ios' | 'android' | 'web'; reason?: string;}AuthorizationOptions
Abschnitt mit dem Titel “AuthorizationOptions”export interface AuthorizationOptions { /** Data types that should be readable after authorization. */ read?: HealthDataType[]; /** Data types that should be writable after authorization. */ write?: HealthDataType[];}AuthorizationStatus
Abschnitt mit dem Titel “AuthorizationStatus”export interface AuthorizationStatus { readAuthorized: HealthDataType[]; readDenied: HealthDataType[]; writeAuthorized: HealthDataType[]; writeDenied: HealthDataType[];}QueryOptions
Abschnitt mit dem Titel “QueryOptions”export interface QueryOptions { /** The type of data to retrieve from the health store. */ dataType: HealthDataType; /** Inclusive ISO 8601 start date (defaults to now - 1 day). */ startDate?: string; /** Exclusive ISO 8601 end date (defaults to now). */ endDate?: string; /** Maximum number of samples to return (defaults to 100). */ limit?: number; /** Return results sorted ascending by start date (defaults to false). */ ascending?: boolean;}ReadSamplesResult
Abschnitt mit dem Titel “ReadSamplesResult”export interface ReadSamplesResult { samples: HealthSample[];}WriteSampleOptions
Abschnitt mit dem Titel “WriteSampleOptions”export interface WriteSampleOptions { dataType: HealthDataType; value: number; /** * Optional unit override. If omitted, the default unit for the data type is used * (count for `steps`, meter for `distance`, kilocalorie for `calories`, bpm for `heartRate`, kilogram for `weight`). */ unit?: HealthUnit; /** ISO 8601 start date for the sample. Defaults to now. */ startDate?: string; /** ISO 8601 end date for the sample. Defaults to startDate. */ endDate?: string; /** Metadata key-value pairs forwarded to the native APIs where supported. */ metadata?: Record<string, string>; /** For blood pressure data, the systolic value in mmHg. Required when dataType is 'bloodPressure'. */ systolic?: number; /** For blood pressure data, the diastolic value in mmHg. Required when dataType is 'bloodPressure'. */ diastolic?: number;}QueryWorkoutsOptions
Abschnitt mit dem Titel “QueryWorkoutsOptions”export interface QueryWorkoutsOptions { /** Optional workout type filter. If omitted, all workout types are returned. */ workoutType?: WorkoutType; /** Inclusive ISO 8601 start date (defaults to now - 1 day). */ startDate?: string; /** Exclusive ISO 8601 end date (defaults to now). */ endDate?: string; /** Maximum number of workouts to return (defaults to 100). */ limit?: number; /** Return results sorted ascending by start date (defaults to false). */ ascending?: boolean; /** * Anchor for pagination. Use the anchor returned from a previous query to continue from that point. * On iOS, this is the ISO 8601 cursor returned by the previous query. On Android, this uses * Health Connect's pageToken. * Omit this parameter to start from the beginning. */ anchor?: string;}QueryWorkoutsResult
Abschnitt mit dem Titel “QueryWorkoutsResult”export interface QueryWorkoutsResult { workouts: Workout[]; /** * Anchor for the next page of results. Pass this value as the anchor parameter in the next query * to continue pagination. If undefined or null, there are no more results. */ anchor?: string;}QueryAggregatedOptions
Abschnitt mit dem Titel “QueryAggregatedOptions”export interface QueryAggregatedOptions { /** The type of data to aggregate from the health store. */ dataType: HealthDataType; /** Inclusive ISO 8601 start date (defaults to now - 1 day). */ startDate?: string; /** Exclusive ISO 8601 end date (defaults to now). */ endDate?: string; /** Time bucket for aggregation (defaults to 'day'). */ bucket?: BucketType; /** Aggregation operation to perform (defaults to 'sum'). */ aggregation?: AggregationType;}QueryAggregatedResult
Abschnitt mit dem Titel “QueryAggregatedResult”export interface QueryAggregatedResult { samples: AggregatedSample[];}HealthDataType
Abschnitt mit dem Titel “HealthDataType”export type HealthDataType = | 'steps' | 'distance' | 'calories' | 'heartRate' | 'weight' | 'sleep' | 'respiratoryRate' | 'oxygenSaturation' | 'restingHeartRate' | 'heartRateVariability' | 'bloodPressure' | 'bloodGlucose' | 'bodyTemperature' | 'height' | 'flightsClimbed' | 'exerciseTime' | 'distanceCycling' | 'bodyFat' | 'basalBodyTemperature' | 'basalCalories' | 'totalCalories' | 'mindfulness' | 'workouts';HealthSample
Abschnitt mit dem Titel “HealthSample”export interface HealthSample { dataType: HealthDataType; value: number; unit: HealthUnit; startDate: string; endDate: string; sourceName?: string; sourceId?: string; /** Platform-specific unique identifier (HealthKit UUID on iOS, Health Connect metadata ID on Android). */ platformId?: string; /** For sleep data, indicates the sleep state (e.g., 'asleep', 'awake', 'rem', 'deep', 'light'). */ sleepState?: SleepState; /** For blood pressure data, the systolic value in mmHg. */ systolic?: number; /** For blood pressure data, the diastolic value in mmHg. */ diastolic?: number;}Quelle der Wahrheit
Abschnitt mit dem Titel “Quelle der Wahrheit”Diese Seite wurde von dem Plugin generiert. src/definitions.tsRe-run die Synchronisierung, wenn die öffentliche API sich im Quellcode ändert.