跳转到内容

开始使用

  1. 安装插件

    Terminal window
    npm i @capgo/capacitor-health
  2. 同步原生项目

    Terminal window
    npx cap sync
  • 在 Xcode 中打开 ios/App/App.xcworkspace 并启用 HealthKit 功能。
  • Info.plist 中提供使用说明:
<key>NSHealthShareUsageDescription</key>
<string>此应用读取您的健康指标以个性化您的体验。</string>
<key>NSHealthUpdateUsageDescription</key>
<string>此应用写入您明确记录的健康数据。</string>

健康数据由 Health Connect 提供支持。请确保:

  • minSdkVersion26 或更高(Capacitor 5 已经满足此要求)。
  • 用户已安装 Health Connect(Android 14+ 已捆绑;早期版本需要从 Play Store 下载)。
  • 在提示访问权限时,引导用户通过运行时权限 UI。
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(),
});
  • 使用 checkAuthorization() 验证当前的读/写范围并调整您的 UI。
  • 通过解释为什么数据会增强体验并提供重试选项,优雅地处理拒绝。
  • 始终尊重用户的隐私,只请求您的功能所需的最小范围。