健康

  
プラットフォームに依存しない方法で高性能のヘルスケア アプリを作成します。
最新の更新 安定版リリース リリース候補版 ベータ版リリース アルファ版リリース
2026 年 9 月 23 日 1.1.0 - - -

依存関係の宣言

Health への依存関係を追加するには、Google の Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、Google の Maven リポジトリをご覧ください。

アプリまたはモジュールの build.gradle ファイルに、必要なアーティファクトの依存関係を追加します。

Groovy

dependencies {
    implementation "androidx.health:health-services-client:1.1.0"
}

Kotlin

dependencies {
    implementation("androidx.health:health-services-client:1.1.0")
}

フィードバック

お寄せいただいたフィードバックは Jetpack 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。

新しい問題を報告する

詳細については、Issue Tracker のドキュメントをご覧ください。

Health-Services-Client

バージョン 1.1

バージョン 1.1.0

2026 年 9 月 23 日

androidx.health:health-services-client:1.1.0、androidx.health:health-services-client-external-protobuf:1.1.0、androidx.health:health-services-client-proto:1.1.0 がリリースされました。バージョン 1.1.0 にはこれらの commit が含まれています。

1.0.0 以降の重要な変更:

新機能

  • 遅延目標: 遅延目標のサポートを追加しました。これにより、条件で、トリガーされる前に指定された期間にわたってしきい値が維持されるように設定できます。
  • エクササイズ イベント: ゴルフスイングの分類(GolfShotEvent)など、個別のエクササイズ発生のためのイベント駆動型フレームワークを追加しました。
  • ランニング ダイナミクス: 歩幅、接地時間、上下動、上下動比のデータ型と集計統計情報を追加しました。
  • 水泳のラップのトラッキング: 水泳のラップ数の累計の集計サポート(SWIMMING_LAP_COUNT_TOTAL)を追加しました。

バージョン 1.1.0-rc02

2026 年 5 月 6 日

androidx.health:health-services-client:1.1.0-rc02、androidx.health:health-services-client-external-protobuf:1.1.0-rc02、androidx.health:health-services-client-proto:1.1.0-rc02 がリリースされました。バージョン 1.1.0-rc02 には、これらの commit が含まれています。

Notable:

  • 距離をリクエストする場合のみ、水泳プールの長さの要件を緩和(2dc7a2e)

バージョン 1.1.0-rc01

2026 年 2 月 25 日

androidx.health:health-services-client:1.1.0-rc01、androidx.health:health-services-client-external-protobuf:1.1.0-rc01、androidx.health:health-services-client-proto:1.1.0-rc01 がリリースされました。バージョン 1.1.0-rc01 には、以前のベータ版リリースからの変更はありません。

バージョン 1.1.0-beta01

2026 年 2 月 11 日

androidx.health:health-services-client:1.1.0-beta01、androidx.health:health-services-client-external-protobuf:1.1.0-beta01、androidx.health:health-services-client-proto:1.1.0-beta01 がリリースされました。バージョン 1.1.0-beta01 には、以前のアルファ版リリースからの変更はありません。

バージョン 1.1.0-alpha05

2024 年 12 月 11 日

androidx.health:health-services-client:1.1.0-alpha05、androidx.health:health-services-client-external-protobuf:1.1.0-alpha05、androidx.health:health-services-client-proto:1.1.0-alpha05 がリリースされました。バージョン 1.1.0-alpha05 に含まれる commit については、こちらをご覧ください。

新機能

  • 必要なクラスが削除されないようにするための ProGuard ルールが含まれるようになりました。(65d0c3f)

バグの修正

  • このライブラリは、型使用の JSpecify nullness アノテーションを使用するようになりました。Kotlin を使用している場合、次のコンパイラ引数を使用して正しい使用法を適用する必要があります。-Xjspecify-annotations=strict(これは Kotlin コンパイラのバージョン 2.1.0 以降のデフォルトです)。(Iaf73a、b/326456246)

バージョン 1.1.0-alpha04

2024 年 10 月 16 日

androidx.health:health-services-client:1.1.0-alpha04、androidx.health:health-services-client-external-protobuf:1.1.0-alpha04、androidx.health:health-services-client-proto:1.1.0-alpha04 がリリースされました。バージョン 1.1.0-alpha04 に含まれる commit については、こちらをご覧ください。

セキュリティに関する修正

  • この変更により、androidx は CVE-2024-7254 に対応するため、protobuf 4.28.2 に対してコンパイルされます。脆弱性のリスクに対処するため、androidx.health:health-services-client への依存関係を最新の 1.1.0-alpha04 にアップグレードします。

バージョン 1.1.0-alpha02

2023 年 12 月 13 日

androidx.health:health-services-client:1.1.0-alpha02 がリリースされました。バージョン 1.1.0-alpha02 に含まれる commit については、こちらをご覧ください。

API の変更

  • サポートされている ExerciseEvent の単一の信頼できる情報源を使用します。(I03308)

バグの修正

  • 軽微なバグの修正とドキュメントの改善。

バージョン 1.1.0-alpha01

2023 年 8 月 9 日

androidx.health:health-services-client:1.1.0-alpha01 がリリースされました。バージョン 1.1.0-alpha01 に含まれる commit については、こちらをご覧ください。

新機能

  • ExerciseEvent API が、最初の具体的なイベントである GolfShotEvent とともに追加されました。ExerciseEvent プリミティブを使用すると、デベロッパーは、スマートウォッチが何らかのイベントを検出したときに、そのイベントのサポートをクエリしたり、通知をリクエストしたりできます。たとえば、GolfShotEvent を使用すると、スイングの種類が認識されたときに通知を受け取るだけでなく、ユーザーがゴルフショットを打ったときにも通知を受け取ることができます。

API の変更

  • WHS SDK クライアントが GolfShotEvent 機能を使用できるようにします。(I76b03)

バグの修正

  • 不明なエクササイズ イベント機能が見つかったときに例外を積極的にスローするのではなく、リストから除外します。(I06afc)

バージョン 1.0

バージョン 1.0.0

2025 年 5 月 7 日

androidx.health:health-services-client:1.0.0 がリリースされました。バージョン 1.0.0 に含まれる commit については、こちらをご覧ください。

1.0.0 の主な機能

  • これは、Health Services Client の安定版リリースとなる 1.0.0-rc02 のプロモーションです。1.0.0-rc02 からの変更はありません。

バージョン 1.1.0-alpha03

2024 年 5 月 14 日

androidx.health:health-services-client:1.1.0-alpha03 がリリースされました。バージョン 1.1.0-alpha03 に含まれる commit については、こちらをご覧ください。

新機能

  • 運動中にサンプル データ型または統計サンプル データ型の目標を追跡できる DebouncedGoal API を導入しました。この API には、デバウンス機能(initialDelay と durationAtThreshold)が備わっています。(I09be9)
  • 次の高度なランニング機能のサンプルと統計 DataTypes を追加しました。(I0b8b5):
    • Ground Contact Time
    • Vertical Oscillation
    • Vertical Ratio
    • Stride Length

API の変更

  • ELEVATION_GAIN_DAILY 個の DataType が追加されています。(I059d1)
  • SWIM_LAP_COUNT の集計された DataType として SWIM_LAP_COUNT_TOTAL DataType を追加しました。(I0beeb)

バグの修正

  • IPC の信頼性を向上させるため、さまざまな問題を修正しました。

バージョン 1.0.0-rc02

2024 年 4 月 3 日

androidx.health:health-services-client:1.0.0-rc02 がリリースされました。バージョン 1.0.0-rc02 にはこれらの commit が含まれています。これはバグの修正のみのリリースであり、API の変更は含まれていません。

バグの修正

  • IPC の信頼性を向上させるため、さまざまな問題を修正
  • prepareExercise と同時に startExercise を呼び出すと ConcurrentModificationException につながる可能性がある問題を修正しました(4e37773)
  • マニュアルの強化

バージョン 1.0.0-rc01

2023 年 7 月 26 日

androidx.health:health-services-client:1.0.0-rc01 がリリースされました。バージョン 1.0.0-rc01 に含まれる commit については、こちらをご覧ください。

新機能

  • ヘルスサービス は、ベータ版で安定したため 1.0.0-rc01 に移行しました。

API の変更

  • h-path から m-path までの公開 API ファイルと試験運用版 API ファイルを統合しました。(Ic4630、b/278769092)
  • 該当なし。API ファイルの変更はメソッドの順序変更のみです。(I5fa95)

バージョン 1.0.0-beta03

2023 年 4 月 5 日

androidx.health:health-services-client:1.0.0-beta03 がリリースされました。バージョン 1.0.0-beta03 に含まれる commit については、こちらをご覧ください。

新機能

BatchingMode は、アクティブなエクササイズ中に、デフォルトではなく、構成された間隔でバッチ処理されたエクササイズ データを配信するように構成できるようになりました。エクササイズの開始時に ExerciseConfig を介して、またはオーバーライド メソッドを使用して配信できます。このサポートは、Google Play ストアでリリースされる今後のヘルスサービスで有効になり、エクササイズ機能で確認できます。注: バッチモードはデバイスが非インタラクティブな電源状態のときに有効になり、消費電力が増加します。

API の変更

  • suspend 関数 overrideBatchingModesForActiveExercise が失敗した場合に HealthServicesException をスローします(Ifd387)
  • 非同期 overrideBatchingModesForActiveExercise API の一時停止関数を導入し、Kotlin との親和性を高めました(I7dd15)
  • ExerciseConfig で BatchingMode のオーバーライドが省略可能になりました(Id22e9)

バグの修正

  • DataType と ExerciseUpdate の小規模な修正(5e185f)

バージョン 1.0.0-beta02

2023 年 1 月 11 日

androidx.health:health-services-client:1.0.0-beta02 がリリースされました。バージョン 1.0.0-beta02 に含まれる commit については、こちらをご覧ください。

新機能

  • Kotlin のサポートを強化するため、既存の非同期 ListenableFuture API の suspend 拡張関数を ExerciseClient、PassiveMonitoringClient、MeasureClient に追加しました。(Iadea4)
  • エクササイズの進行中の更新を可能にする ExerciseTypeConfig API を追加しました。ゴルフ エクササイズ中の ExerciseTypeConfig の更新をサポートするため GolfExerciseTypeConfig を追加しました。(I4c539)

API の変更

  • suspend 関数で HealthServicesException をスローします。(I5e509)
  • 下位互換性を保つために別のコンストラクタを追加しました。(Iddeda)
  • suspend 関数で RuntimeException をスローします。(I53bca)
  • 例外のスローのデフォルト実装を削除しました。(Id947f)
  • @JvmDefaultWithCompatibility アノテーションを追加しました。(I8f206)

バグの修正

  • わかりやすくするため kdoc に追加しました。(Ide285)
  • 同じデータ型もトラッキングしている場合にのみ、目標のパッシブ モニタリングのトラッキングが可能になります。(Ibed8d)

バージョン 1.0.0-beta01

2022 年 10 月 24 日

androidx.health:health-services-client:1.0.0-beta01 がリリースされました。バージョン 1.0.0-beta01 に含まれる commit については、こちらをご覧ください。

新機能

  • 最初のイベントが HealthEvent.FALL_DETECTED である PassiveMonitoringClient を介してヘルスイベントをリッスンする機能が追加されました。

  • 新しいエクササイズの種類:

    • ALPINE_SKIING
    • BACKPACKING
    • CROSS_COUNTRY_SKIING
    • HORSE_RIDING
    • INLINE_SKATING
    • MOUNTAIN_BIKING
    • ORIENTEERING
    • ROLLER_SKATING
    • YACHTING
  • 新しいデータ型:

    • ELEVATION_LOSS
    • GOLF_SHOT_COUNT

API の変更

  • データのモデル化方法を更新: データモデルと、DataType、DataPoint、およびそれらの基となる値を表現する手法が変更されました。最も大きな影響が生じるのは、API がより明示的でタイプセーフになったという点です。
  • ロケーション DataPoint が、DoubleArray としてではなく、厳密に型指定された LocationData オブジェクトとして表されるようになりました。
  • パッシブ リスナー API の新しいセットに移動しました。
    • ブロードキャストが PassiveListenerService に置き換えられました。
    • 既存のリスナーが、単一のリスナー PassiveListenerCallback に置き換えられました。
  • ヘルスサービスのマニフェストに <queries> タグを追加しました。これにより、アプリは独自のマニフェストでこれを指定する必要がなくなりました(ビルドシステムでマニフェスト マージが有効になっている場合)。
  • エクササイズが終了中 / 終了済みであることを表すための多くの ExerciseState から移行し、新しいエクササイズの状態 ENDING と ENDED を追加しました。これらを ExerciseEndReason と組み合わせて、以前の状態のすべてを表現できます。
  • 日常的なパッシブ目標のみをサポートすることをより反映させるために、PassiveListenerConfig setPassiveGoals の名前を setDailyGoals に変更しました。
  • PassiveGoal が常に REPEATED になり、パッシブ TriggerFrequency が削除されました。
  • すべての Long パラメータと Double パラメータに @FloatRange アノテーションを付けました。
  • ExerciseConfig に swimmingPoolLengthMeters プロパティを追加しました。このプロパティは、プール スイミングの距離計算を改善するためにオプションで指定できます。
  • ExerciseUpdate.activeDuration を非推奨としました。代わりに ExerciseUpdate.activeDurationCheckpoint を使用してください
  • ExerciseClient の API flushExerciseAsync() の名前を flushAsync() に変更しました。
  • Measure.registerCallback の名前を Measure.registerMeasureCallback に変更しました。
  • 全般的な名称の変更:
    • 距離プロパティに meters 接尾辞が付くようになりました。
    • コールバック メソッド名が過去形になりました。
    • ほとんどの略語が削除されました(HrAccuracy は HeartRateAccuracy になりました)。
    • パターン enableFoo に従うプロパティの名前が isFooEnabled になりました。
  • 列挙型から移行されました。
  • Double で表される時刻が Duration で表されるようになりました。
  • ListenableFuture<Void?> を返す関数が ListenableFuture<Void> を返すようになりました。
  • コールバックを受け入れる関数で、コールバックが常に最後のパラメータとして表示されるようになりました。
  • ビルダーを持つクラスに、常にパブリック コンストラクタも含まれるようになりました。
  • 登録関数が ListenableFuture を返さなくなり、代わりに、指定されたコールバックに登録ステータスを渡すようになりました。
  • KDocs が改善されました。
  • パブリック クラスが ProtoParcelable を拡張しなくなりました。

バグの修正

  • IPC の信頼性を全般的に改善(I3b1e2)

バージョン 1.0.0-alpha03

2021 年 11 月 3 日

androidx.health:health-services-client:1.0.0-alpha03 がリリースされました。バージョン 1.0.0-alpha03 に含まれる commit については、こちらをご覧ください。

新機能

  • SDK は、Health Services APK で IPC 接続が切断された場合に、測定、エクササイズ リスナー、およびパッシブ モニタリング コールバックの登録リクエストを自動的に再登録します。

API の変更

  • ヘルスサービス クライアントは現在 Wear3 でのみサポートされているため、SDK ライブラリの minSdkVersion は API レベル 30 に引き上げられました。

バージョン 1.0.0-alpha02

2021 年 9 月 29 日

androidx.health:health-services-client:1.0.0-alpha02 がリリースされました。バージョン 1.0.0-alpha02 に含まれる commit については、こちらをご覧ください。

API の変更

  • ExerciseClient がエクササイズの準備をサポートするようになりました。これにより、クライアントはセンサーをウォームアップし、GPS 修正などを待ってからエクササイズを開始できます。
  • CumulativeDataPoints および StatisticalDataPoints AggregateDataPoint クラスを導入し、アクティブなエクササイズ中にトラッキングされる集計指標をより適切にモデル化できるようにしました。CumulativeDataPoints は、集計された間隔データ型(エクササイズ中の合計距離など)の累積値を保持し、StatisticalDataPoints は、サンプリングされたデータポイント(HeartRateBpm の最小値、最大値、平均値など)の集計値をモデル化します。これは以前の AGGREGATE_* DataType に代わるものであり、getLatestAggregateMetrics() を介して ExerciseUpdate 内でアクセスできます。AGGREGATE_* DataType はサポート対象外になりました。
  • PassiveMonitoring イベントの名前が PassiveGoals に変更されました。このイベントは、日次指標(DAILY_STEPS など)のデータ型について、目標の設定と目標達成時の通知の受け取りをサポートします。
  • 新しい HrAccuracy クラス、LocationAccuracy クラス、LocationAvailability クラスの導入により、心拍数、位置情報の精度、可用性のモデル化を改善しました。
  • ExerciseConfig と新しい PassiveMonitoringConfig フィールドの名前を改善し、GPS に裏付けられたデータをリクエストする ExerciseConfig.shouldEnableGps を導入しました。

バグの修正

  • 下位互換性のサポートを強化するため、proto に支えられた IPC トランスポートに移行しました。

バージョン 1.0.0-alpha01

2021 年 5 月 18 日

androidx.health:health-services-client:1.0.0-alpha01 がリリースされました。バージョン 1.0.0-alpha01 に含まれる commit については、こちらをご覧ください。

初回リリースの機能

Health Services ライブラリには統一された一連の API が用意されており、デベロッパーはデバイス固有のセンサーの実装と統合できます。Wear OS 3 エミュレータおよび近日発売予定のデバイスですぐに使用できます。今後、他のプラットフォームもサポートされる予定です。この初回リリースには、3 つのトップレベル API サーフェス(ExerciseClient、PassiveMonitoringClient、MeasureClient)が含まれています。

ExerciseClient

ExerciseClient は、アクティブなワークアウトをトラッキングするアプリ向けです。ウォーキングやランニングから、ダンスや水球まで、最大で 82 種類の ExerciseType を利用できます。このようなエクササイズのトラッキングでは、デバイスで利用できるエクササイズのタイプとハードウェアに応じて、50 種類の DataType が用意されています。まず、ExerciseConfig で関連情報を指定し、exerciseClient.startExercise を呼び出して、更新リスナーで進捗状況をリッスンします。

PassiveMonitoringClient

PassiveMonitoringClient は、アプリで 1 日を通してユーザーのアクティビティをトラッキングする場合に最適です。PendingIntent を DataType のセットに登録して、一括変更を処理できるようになります。また、一定のステップ数への到達など、Event を指定することもできます。

MeasureClient

運動中や 1 日を通してではなく、その瞬間の心拍数などを測定する必要がある場合もあります。そのような場合は、MeasureClient が最適です。コールバックをサポートされている DataType に登録するだけで、データ ストリームを受信でき、不要になったコールバックの登録は解除されます。

ヘルスコネクト クライアント

バージョン 1.0

バージョン 1.0.0-alpha04

2022 年 8 月 24 日

1.0.0-alpha04 以降、androidx.health:health-connect-client は androidx.health.connect:connect-client に移行されました。今後のリリースについては、androidx.health.connect:connect-client、およびヘルスコネクト ページの関連するリリースノートを使用してください。

移行するには、依存関係のインポートを androidx.health:health-connect-client:1.0.0-alpha03 から androidx.health.connect:connect-client:1.0.0-alpha04 に変更します。

バージョン 1.0.0-alpha03

2022 年 7 月 27 日

androidx.health:health-connect-client:1.0.0-alpha03 がリリースされました。バージョン 1.0.0-alpha03 に含まれる commit については、こちらをご覧ください。

新機能

  • 新しい API の変更の概要: 読み取り、書き込み、および集計 API に単位のセットが追加されました。アプリは、任意の単位(たとえば NutritionRecord 栄養素の場合はグラムやミリグラム)でレコードの取得または書き込みを行えるようになりました。

API の変更

  • 各種のリクエスト レスポンス オブジェクトで List<DataOrigin> を Set<DataOrigin> に修正しました。(I42342)
  • パワー -> エネルギーの基礎合計カロリーの単位を修正しました。(I0b429)
  • 級数レコード内の級数サンプルクラスを次のように移行しました。(Ica9bb)
    • CyclingPedalingCadence -> CyclingPedalingCadenceRecord.Sample
    • HeartRate -> HeartRateRecord.Sample
    • StepsCadence -> StepsCadenceRecord.Sample
  • HealthDataRequestPermission クラスを非推奨にして PermissionController.createRequestPermissionActivityContract に置き換えました。これにより、検出可能性が向上し、パラメータ化の統合が促進されます。(I81e7f)
  • ボリュームに米国の液量オンスを追加しました。(I5f03d)
  • 単位タイプとして速度を追加しました。(I1d574)
  • 単位タイプとしてパーセンテージを追加しました。(I08f23)
  • 単位タイプとして圧力を追加しました。(Ifb01f)
  • 単位タイプとして質量を追加しました。(Ifd81a)
  • 単位タイプとしてボリュームを追加しました。(I59ad1)
  • 単位タイプとしてパワーを追加しました。PowerRecord クラス内のパワー級数サンプルクラスを移行しました。(I5b1e5)
  • 単位タイプとしてエネルギーを追加しました。(I983ae)
  • 単位タイプとして温度を追加しました。(I4cdb5)
  • Activity の参照の名前を、次のようにエクササイズ固有の名前に変更しました。(I3f936)
    • ActivityLap -> ExerciseLapRecord に名前変更
    • ActivityEvent -> ExerciseEventRecord に名前変更
    • Repetitions -> ExerciseRepetitionsRecord に名前変更
    • ActivitySession -> ExerciseSessionRecord に名前変更
  • パッケージ メタデータをレコードの下に移動してネストしました。(Ie0835)
  • 残りのすべてのレコードでは長さ単位を使用しました。(Ib10dd):
    • ActivityLapRecord
    • ElevationGainedRecord
    • HeightRecord
    • HipCircumferenceRecord
    • WaistCircumferenceRecord
  • 単位タイプとして長さを追加しました。(Idae39)
  • CervicalMucus の説明の用語を更新しました。(I25a2b)
    • CervicalMucus.Amount -> CervicalMucusRecord.Texture
    • CervicalMucus.Appearance -> CervicalMucusRecord.Sensation
  • すべてのレコードクラス名に接尾辞「Record」を追加しました。(I1ffc2)

バグの修正

  • リリースのフレーバーと minifyEnabled が true の状態で lib がビルドされたときの ProGuard の問題を修正しました。(I78933)
  • 一般公開用ではないドキュメントを非表示にします。(I7a08f)
  • 独自の protobuf 依存関係を持つ可能性があるクライアントの問題を修正しました(https://android-review.googlesource.com/c/platform/frameworks/support/+/2105430)。

バージョン 1.0.0-alpha02

2022 年 6 月 1 日

androidx.health:health-connect-client:1.0.0-alpha02 がリリースされました。バージョン 1.0.0-alpha02 に含まれる commit については、こちらをご覧ください。

API の変更

  • AggregationResult の hasMetric と getMetric が非推奨になり、contains 演算子と get 演算子が追加されました。(I7cc7c)
  • OvulationTest.Result.HIGH と OvulationTest.Result.INCONCLUSIVE を追加します。(I9f9c4)

バグの修正

  • SDK 要件を 26 に減らします。(I6d201)

バージョン 1.0.0-alpha01

2022 年 5 月 11 日

androidx.health:health-connect-client:1.0.0-alpha01 がリリースされました。バージョン 1.0.0-alpha01 に含まれる commit については、こちらをご覧ください。

新機能

  • 他のアプリと共有されているフィットネスや健康状態の記録を読み取るための API
  • 他のアプリと共有するフィットネスや健康状態の記録を書き込むための API
  • アクセス可能なレコードの集計指標を取得するための API
  • 他のアプリによる記録の追加変更(挿入、更新、削除)を取得するための API
  • 健康データへのアクセス許可をユーザーに促すための API
  • 健康データへのアクセス許可を確認したり取り消したりするための API