始め方
-
プラグインのインストール
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 -
ネイティブプロジェクトと同期
Terminal window npx cap syncTerminal window pnpm cap syncTerminal window yarn cap syncTerminal window bunx cap sync
- Xcodeで
ios/App/App.xcworkspaceを開き、HealthKit機能を有効にします。 Info.plistに使用説明を追加します:
<key>NSHealthShareUsageDescription</key><string>このアプリは、体験をパーソナライズするために健康指標を読み取ります。</string><key>NSHealthUpdateUsageDescription</key><string>このアプリは、明示的に記録した健康データを書き込みます。</string>Android設定
Section titled “Android設定”健康データはHealth Connectによって提供されます。以下を確認してください:
minSdkVersionが26以上 (Capacitor 5はすでにこれを満たしています)。- ユーザーがHealth Connectをインストールしている (Android 14+にはバンドルされています。それ以前のバージョンではPlay Storeからのダウンロードが必要です)。
- アクセスを求める際に、ユーザーをランタイム許可UIに案内する。
利用可能性の確認とアクセスリクエスト
Section titled “利用可能性の確認とアクセスリクエスト”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'],});サンプルの読み取り
Section titled “サンプルの読み取り”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);});サンプルの書き込み
Section titled “サンプルの書き込み”await Health.saveSample({ dataType: 'weight', value: 74.6, startDate: new Date().toISOString(),});checkAuthorization()を使用して、現在の読み取り/書き込みスコープを確認し、UIを調整します。- データが体験を向上させる理由を説明し、再試行の機会を提供することで、拒否を適切に処理します。
- 常にユーザーのプライバシーを尊重し、機能に必要な最小限のスコープのみをリクエストします。