このページでは、Health Connect API の主な機能について説明します。
レコードとデータ同期に対する CRUD 操作
プラットフォームには、記録されたデータに対する標準的な挿入、更新、削除の機能が用意されています。ヘルスコネクトには、クライアント アプリでデータをヘルスコネクトから同期できるようにする機能もあります。この機能によってデータ変更のログが生成され、デベロッパーとユーザーは、特定の種類のデータが他のアプリによって挿入または削除されたかどうかを把握できます。
基本的な集計関数
クライアントは基盤となるデータに集計関数を適用して、次のことを実現できます。
- 平均値、最小値、最大値(アクティビティ セッション中の最小心拍数と最大心拍数など)。
- 合計(1 日ごとの合計歩数など)。
- 基となる測定値の単純な数量(特定の週におけるアクティビティ セッション数など)。
- サポートされている種類のデータについて合計時間を求める(今週深い眠りについた時間数、今日のアクティビティ セッションの合計時間など)
可用性の確認
ヘルスコネクトは Android SDK バージョン 28(Pie)以降に対応しています。この SDK により、クライアント アプリは Health Connect API がユーザーの Android デバイスにあるかどうかを判断できます。ない場合は、ヘルスコネクトが可用性の確認をトリガーし、ユーザーのデバイスが対応しているかどうかを判断します。
権限の確認
ヘルスコネクトでは、アプリごとにユーザーの健康やフィットネスのデータの読み書きを行う権限をユーザーにリクエストする必要があります。また、ユーザーがすでに付与または拒否している権限を確認することもできます。
ヘルスコネクトでの読み取り
フォアグラウンドでの読み取り
ヘルスコネクトでデータを読み取ることができるのは、フォアグラウンドで実行されているアプリのみです。この制限は、ユーザーのプライバシー保護を強化するために設けられたものです。
アプリで読み取り値を表示するなど、アプリで中断が発生する可能性がある場合は、ヘルスコネクトからクライアント アプリに直接読み取ってください。
ヘルスコネクトから一定範囲のデータを読み取り、別の場所に書き込みやアップロードを行う場合など、中断せずにアプリを実行したい場合は、簡単に破棄できる Activity ではなく ForegroundService を使用してください。
バックグラウンドでの読み取り
アプリをバックグラウンドで実行し、ヘルスコネクトからデータを読み取るようにリクエストできます。バックグラウンド読み取り権限をリクエストすると、ユーザーはアプリにバックグラウンドでデータを読み取るアクセス権を付与できます。