Zum Inhalt springen

Getting Started

GitHub

Sie können unsere AI-gestützte Einrichtung verwenden, um das Plugin zu installieren. Fügen Sie die Capgo-Fähigkeiten zu Ihrer KI-Tool mithilfe der folgenden Befehl hinzu:

Terminal-Fenster
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins

Dann verwenden Sie die folgende Anfrage:

Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-health` plugin in my project.

Wenn Sie die manuelle Einrichtung bevorzugen, installieren Sie das Plugin, indem Sie die folgenden Befehle ausführen und folgen Sie den unten angegebenen Plattform-spezifischen Anweisungen:

Terminalfenster
bun add @capgo/capacitor-health
bunx cap sync
import { Health } from '@capgo/capacitor-health';

Gibt an, ob die aktuelle Plattform die native Gesundheitsfunktion SDK unterstützt.

import { Health } from '@capgo/capacitor-health';
await Health.isAvailable();

Bittet um Lesen- und Schreibzugriff auf die bereitgestellten Datentypen.

import { Health } from '@capgo/capacitor-health';
await Health.requestAuthorization({} as AuthorizationOptions);

Ü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);

Liest Proben für den angegebenen Datentyp innerhalb des angegebenen Zeitraums.

import { Health } from '@capgo/capacitor-health';
await Health.readSamples({} as QueryOptions);

Schreibt eine einzelne Probe in den native Health-Store.

import { Health } from '@capgo/capacitor-health';
await Health.saveSample({} as WriteSampleOptions);

Öffnet die Health Connect-Einstellungen-Ansicht (nur Android). Bei iOS tut diese Methode nichts.

Verwenden Sie dies, um den Benutzern die Verwaltung ihrer Health Connect-Berechtigungen zu leiten oder Health Connect zu installieren, wenn es nicht verfügbar ist.

import { Health } from '@capgo/capacitor-health';
await Health.openHealthConnectSettings();

Zeigt die Datenschutzrichtlinie der App für Health Connect (nur Android) an. Bei iOS tut diese Methode nichts.

Dies zeigt die gleiche Datenschutzrichtlinienansicht an, die Health Connect anzeigt, als der Benutzer auf “Datenschutzrichtlinie” in der Berechtigungsdialogbox klickt.

Die Datenschutzrichtlinien-URL kann durch Hinzufügen einer Zeichenfolgenressource 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();

Abfragen Sie die Trainingsessions aus dem nativen Gesundheitsstore. Unterstützt auf iOS (HealthKit) und Android (Health Connect).

import { Health } from '@capgo/capacitor-health';
await Health.queryWorkouts({} as QueryWorkoutsOptions);

Abfragen Sie aggregierte Gesundheitsdaten aus dem nativen Gesundheitsstore. 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);
export interface AvailabilityResult {
available: boolean;
/** Platform specific details (for debugging/diagnostics). */
platform?: 'ios' | 'android' | 'web';
reason?: string;
}
export interface AuthorizationOptions {
/** Data types that should be readable after authorization. */
read?: HealthDataType[];
/** Data types that should be writable after authorization. */
write?: HealthDataType[];
}
export interface AuthorizationStatus {
readAuthorized: HealthDataType[];
readDenied: HealthDataType[];
writeAuthorized: HealthDataType[];
writeDenied: HealthDataType[];
}
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;
}
export interface ReadSamplesResult {
samples: HealthSample[];
}
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;
}
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;
}
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;
}
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;
}
export interface QueryAggregatedResult {
samples: AggregatedSample[];
}
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';
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;
}

Diese Seite wurde aus dem Plugin generiert. src/definitions.tsRe-run die Synchronisierung, wenn die öffentliche API upstream geändert wird.

Wenn Sie Getting Started um das Dashboard und die API-Operationen zu planen und zu verbinden mit Mit @capgo/capacitor-health Für die native Fähigkeit in Mit @capgo/capacitor-health, API-Übersicht Für die Implementierungsdetails in API-Übersicht, Einführung Für die Implementierungsdetails in Einführung, API-Schlüssel Für die Implementierungsdetails in API-Schlüssel und Geräte Für die Implementierungsdetails in Geräte.