ヘルスコネクト
最新の更新 | 安定版リリース | リリース候補版 | ベータ版リリース | アルファ版リリース |
---|---|---|---|---|
2025 年 1 月 15 日 | - | - | - | 1.1.0-alpha11 |
データ型へのアクセス権のリクエスト
ユーザーのプライバシーとセキュリティを強化できるように、ヘルスコネクトと統合するデベロッパーは、アプリで使用するデータ型について、読み取り/書き込みアクセス権を申告する必要があります。デベロッパーは、アプリの目的に応じて使用するデータ型について、有効なユースケースを申告する必要があります。詳しくは、健康アプリ申告フォームの情報を提供すると Android のヘルスコネクトの権限をご覧ください。
依存関係の宣言
health への依存関係を追加するには、Google の Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、Google の Maven リポジトリをご覧ください。
アプリまたはモジュールの build.gradle
ファイルに、必要なアーティファクトの依存関係を追加します。
Groovy
dependencies { // Use to implement health connects implementation "androidx.health.connect:connect-client:1.1.0-alpha08" }
Kotlin
dependencies { // Use to implement health connects implementation("androidx.health.connect:connect-client:1.1.0-alpha08") }
依存関係について詳しくは、ビルド依存関係の追加をご覧ください。
フィードバック
お寄せいただいたフィードバックは Jetpack 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。
詳細については、Issue Tracker のドキュメントをご覧ください。
Health Connect Testing バージョン 1.0
バージョン 1.0.0-alpha01
2024 年 9 月 4 日
androidx.health.connect:connect-testing:1.0.0-alpha01
がリリースされました。バージョン 1.0.0-alpha01 には、これらの commit が含まれています。
新機能
ヘルスコネクト テスト ライブラリを使用すると、自動テストの作成が簡単になります。このライブラリを使用すると、アプリの動作を検証し、手動でテストするのが難しい珍しいケースにアプリが正しく応答することを検証できます。
このライブラリを使用してローカル単体テストを作成できます。通常、これは、Health Connect クライアントとやり取りするアプリ内のクラスの動作を検証します。
ライブラリへのエントリ ポイントは FakeHealthConnectClient
クラスです。このクラスは、テストで HealthConnectClient
の代わりに使用します。これには、次のような機能があります。
- レコードのメモリ内表現。挿入、削除、削除、読み取りが可能です。
- 変更トークンの生成と変更のトラッキング
- レコードと変更のページ分け
- 集計レスポンスはスタブでサポートされています
- 任意の関数で例外をスローできるようにする
- 権限チェックをエミュレートするために使用できる
FakePermissionController
API の変更
バージョン 1.1
バージョン 1.1.0-alpha11
2025 年 1 月 15 日
androidx.health.connect:connect-client:1.1.0-alpha11
、androidx.health.connect:connect-client-external-protobuf:1.1.0-alpha11
、androidx.health.connect:connect-client-proto:1.1.0-alpha11
がリリースされました。バージョン 1.1.0-alpha11 に含まれる commit はこちらをご覧ください。
新機能
- バックグラウンドと履歴の読み取り権限を更新し、Android 13 以前をサポートしました。
API の変更
HealthPermission.getReadPermission
とHealthPermission.getWritePermission
の具体的なインライン オーバーロードを追加しました。(I59a2e)
バグの修正
- 以前の権限メソッドを削除しました(Ifd080)
- このライブラリは、型使用である JSpecify nullness アノテーションを使用するようになりました。Kotlin デベロッパーは、
-Xjspecify-annotations=strict
、-Xtype-enhancement-improvements-strict-mode
の各コンパイラ引数を使用して、正しい使用を強制する必要があります。(Iaf73a、b/326456246) HealthPermission.READ_HEALTH_DATA_HISTORY
のドキュメントを修正しました。具体的には、この権限のない読み取りが失敗するのは、単一のデータポイントの読み取りを試行した場合に限られることを指摘しました。(Id5b5a)
バージョン 1.1.0-alpha10
2024 年 10 月 16 日
androidx.health.connect:connect-client:1.1.0-alpha10
、androidx.health.connect:connect-client-external-protobuf:1.1.0-alpha10
、androidx.health.connect:connect-client-proto:1.1.0-alpha10
がリリースされました。バージョン 1.1.0-alpha10 に含まれる commit はこちらをご覧ください。
新機能
SkinTemperature
集計タイプを追加しました。(Ibe123)FEATURE_PLANNED_EXERCISE
定数を追加しました。(Ie02a3)- 履歴読み取り権限を追加しました。(I5cf41)
- Training plans API を追加しました(If5be1)
SkinTemperatureRecord
API を追加しました。(I5605d)
セキュリティに関する修正
- この変更により、androidx は protobuf 4.28.2 に対してコンパイルされ、CVE-2024-7254 に対処します。
androidx.health:connect:connect-client-proto
とandroidx.health:connect:connect-client-external-protobuf
の依存関係を最新の 1.1.0-alpha10 にアップグレードして、脆弱性リスクに対処します。
バージョン 1.1.0-alpha09
2024 年 9 月 18 日
androidx.health.connect:connect-client:1.1.0-alpha09
、androidx.health.connect:connect-client-external-protobuf:1.1.0-alpha09
、androidx.health.connect:connect-client-proto:1.1.0-alpha09
がリリースされました。バージョン 1.1.0-alpha09 に含まれる commit はこちらをご覧ください。
新機能
バージョン 1.1.0-alpha08
2024 年 9 月 4 日
androidx.health.connect:connect-client:1.1.0-alpha08
、androidx.health.connect:connect-client-external-protobuf:1.1.0-alpha08
、androidx.health.connect:connect-client-proto:1.1.0-alpha08
がリリースされました。バージョン 1.1.0-alpha08 に含まれる commit はこちらをご覧ください。
API の変更
バグの修正
- U+ 5802f で
HealthConnectManager
が null の場合、HealthConnectClient.getSdkStatus()
でSDK_UNAVAILABLE
を返す toString
オーバーライドをRecordClasses
に追加 aa5dc- 新しいプラットフォーム API へのアクセスの手動アウトラインを削除しました。これは、AGP 7.3 以降(R8 バージョン 3.3 など)で R8 を使用する場合、および AGP 8.1 以降(D8 バージョン 8.1 など)を使用するすべてのビルドで、API モデリングによって自動的に行われるためです。AGP を使用していないクライアントは、D8 バージョン 8.1 以降にアップデートすることをおすすめします。詳しくは、こちらの記事をご覧ください。(If6b4c、b/345472586)
バージョン 1.1.0-alpha07
2024 年 1 月 10 日
androidx.health.connect:connect-client:1.1.0-alpha07
がリリースされました。バージョン 1.1.0-alpha07 に含まれる commit については、こちらをご覧ください。
API の変更
- プロファイル ユーザーのコンテキストから
#getSdkStatus
が呼び出された場合はSDK_UNAVAILABLE
を返します。(I91df3) SleepStageRecord
を削除しました。(/If6ada)
バグの修正
- バインディングの失敗時に
IllegalStateException
ではなくRemoteException
をスロー。(Id2233)
バージョン 1.1.0-alpha06
2023 年 10 月 18 日
androidx.health.connect:connect-client:1.1.0-alpha06
がリリースされました。バージョン 1.1.0-alpha06 に含まれる commit については、こちらをご覧ください。
API の変更
recordingMethod
定義を公開します。(I401fb)
バグの修正
- エクササイズ ルートに、場所がセッションの終了時間より前である必要があることを指定するドキュメントを追加しました。(0e51e6)
バージョン 1.1.0-alpha05
2023 年 10 月 4 日
androidx.health.connect:connect-client:1.1.0-alpha05
がリリースされました。バージョン 1.1.0-alpha05 に含まれる commit については、こちらをご覧ください。
API の変更
- ヘルスコネクトのデータ管理画面に移動するインテントを追加しました。(Ibf591)
AggregationResult
の非推奨メソッドを削除しました。(Idbda9)ReadRecordsRequest
の作成、レコードの削除と読み取り、再実体化されたレコードタイプのためのコンビニエンス API を追加しました。(If58a5)
バグの修正
- Android 14 で、null の栄養成分フィールドが
Double.MIN_VALUE
として返されるバグを修正しました。(1aa1d1) - バケットの開始時間と終了時間が同じであるために、月単位または年単位での集計でレスポンスで例外がスローされるという Android 14 のバグを修正しました。(281313)
バージョン 1.1.0-alpha04
2023 年 9 月 6 日
androidx.health.connect:connect-client:1.1.0-alpha04
がリリースされました。バージョン 1.1.0-alpha04 に含まれる commit については、こちらをご覧ください。
API の変更
- Java のみ:
ChangesResponse
のgetHasMore()
フィールドの名前をhasMore()
に変更します。(I80695) - Android バージョン間で
HealthPermissionsRequestContract#createIntent
チェックを調整しました。契約では、すべての権限が健康関連の権限であることを確認します。(I143fc)
バグの修正
- 空のロケーション リストを含む
ExerciseRoute
でExerciseSessionRecord
が作成されたときにスローされる例外を修正しました。(I45c16) - 睡眠セッションの読み取りに関する
SleepSessionRecord
のドキュメントとサンプルコードを更新しました。(Idf0de)
バージョン 1.1.0-alpha03
2023 年 7 月 26 日
androidx.health.connect:connect-client:1.1.0-alpha03
がリリースされました。バージョン 1.1.0-alpha03 に含まれる commit については、こちらをご覧ください。
新機能
- エクササイズ ルートの読み取りと書き込みを行う API:
- 「
ExerciseRouteResult
」を「ExerciseSessionRecord
」に追加しました ExerciseRouteRequestContract
を追加しました
- 「
API の変更
ExerciseRouteResult
とそのサブクラス(Data
、NoData
、ConsentRequiredStates
)を追加しました。- ルートの位置情報を保持するスタンドアロン クラスとして
ExerciseRoute
を追加しました。(I22eed) PERMISSION_WRITE_EXERCISE_ROUTE
を追加しました。(I92fc4)ExerciseRouteRequestContract
を追加し、HealthPermissionsRequestContract
を追加しました。(Ief0e5)
バグの修正
- キロジュール単位のエネルギーの作成を修正しました。(Ie8791)
バージョン 1.1.0-alpha02
2023 年 6 月 21 日
androidx.health.connect:connect-client:1.1.0-alpha02
がリリースされました。バージョン 1.1.0-alpha02 に含まれる commit については、こちらをご覧ください。
バグの修正
HealthDataSdkService
リークを修正しました。(Ia3ba5)- Android U で権限をリクエストするときに、常に適切な
HealthConnect
クライアントにリダイレクトします。(I6415a)
バージョン 1.1.0-alpha01
2023 年 6 月 7 日
androidx.health.connect:connect-client:1.1.0-alpha01
がリリースされました。このバージョンは内部ブランチで開発されています。
新機能
- Android 14 フレームワーク バージョンのヘルスコネクトのサポート。この SDK は Android 14 の前提条件です。これを行わないと、Android 14 でヘルスコネクトとアプリを統合できなくなります。
- メタデータを記録する録画方法を追加しました。
API の変更
- Session API の変更:
SleepSessionRecord
にさまざまな睡眠ステージを追加し、SleepStageRecord
を削除しました。ExerciseSessionRecord
にExerciseLap
とExerciseSegment
を追加しました。
- 読み取り、変更履歴、挿入、削除オペレーションの定期的なレート制限と 1 日あたりのレート制限(メモリ制限を含む)。
- すべての
NutritionRecord
フィールドの検証を追加しました。 HeartRateVariabilityRmssdRecord
の検証を追加しました。- 非推奨の 2 つの API(
HealthConnectClient#isProviderAvailable
とHealthConnectClient#isApiSupported
)を削除しました。
バグの修正
- すべての単位タイプの単位の等価性を修正しました。単位の等価性は、単位の初期化に使用される型に依存しなくなりました。たとえば、Mass.grams(1000) は Mass.kilograms(1) と同じになりました。
バージョン 1.0
バージョン 1.0.0-alpha11
2023 年 2 月 22 日
androidx.health.connect:connect-client:1.0.0-alpha11
がリリースされました。バージョン 1.0.0-alpha11 に含まれる commit については、こちらをご覧ください。
API の変更
- ヘルスコネクトを開くために使用するインテントを追加しました。(Ic8055)
- 一部のエクササイズ タイプを削除しました。削除されたタイプの代わりに
EXERCISE_TYPE_STRENGTH_TRAINING
、EXERCISE_TYPE_HIGH_INTENSITY_INTERVAL_TRAINING
、またはEXERCISE_TYPE_CALISTHENICS
を使用してください。(I7291c) - サポートが終了した 2 つの API
isSdkSupported()
とisProviderAvailable()
を組み合わせた、新しい APIsdkStatus()
を追加しました。(Iac89d) providerPackageName
を受け入れる API を変更して、リストではなく 1 つの文字列を受け入れるようにしました。(I67e0f)
バージョン 1.0.0-alpha10
2023 年 1 月 25 日
androidx.health.connect:connect-client:1.0.0-alpha10
がリリースされました。バージョン 1.0.0-alpha10 に含まれる commit については、こちらをご覧ください。
API の変更
ExerciseEventRecord
、ExerciseLapRecord
、ExerciseRepititionRecord
、SwimmingStrokesRecord
はRecordTypes
としてサポートされなくなりました。HealthConnect
に対する書き込みと読み取りができなくなります。HealthConnect
統合からこれらのデータ型への参照をすべて削除します。(If7ca2)- 新しい文字列ベースの形式で権限が受け入れられるように権限 API を変更しました。この変更に伴い、権限の申告を Android 標準の権限形式に変更することも必要になります。(Ib0a2f)
バージョン 1.0.0-alpha09
2023 年 1 月 11 日
androidx.health.connect:connect-client:1.0.0-alpha09
がリリースされました。バージョン 1.0.0-alpha09 に含まれる commit については、こちらをご覧ください。
新機能
- ヘルスコネクト用に女性の健康に関するデータ型を 2 つ追加しました(
IntermenstrualBleedingRecord
とMenstruationPeriodRecord
)。MenstruationFlow.ENUMs
は、Light、Medium、Heavy、Unknown です。
API の変更
バージョン 1.0.0-alpha08
2022 年 12 月 7 日
androidx.health.connect:connect-client:1.0.0-alpha08
がリリースされました。バージョン 1.0.0-alpha08 に含まれる commit については、こちらをご覧ください。
API の変更
- サポートされている新しいレコードタイプとして
BodyWaterMass
、HeartRateVariabilityRmssdRecord
を追加しました。(Ifd58f) - サポートされている
RecordTypes
としてHipCircumferenceRecord
、WaistCircumferenceRecord
を削除しました。(I62fb9) MenstruationFlowRecord.flow
をstringdef
からintdefs
に変更しました。(I0369f)- パフォーマンスを向上させるために、
Strings
を含む列挙型のようなレコード フィールドをIntegers
に変更しました。(I3b295) ExerciseSession
、ExerciseRepetitions
、SleepStage
の列挙型のようなフィールドを文字列から整数型に変更しました。(Id32a9)ExerciseSessionRecord.ACTIVE_TIME_TOTAL->EXERCISE_DURATION_TOTAL
に変更しました。(I5d7bd)CervicalMucus
列挙型に「Unusual」を追加しました。より明確にするために「Clear」を「Eggwhite」に変更しました。CervicalMucus#appearance
と #sensation をStringDefs
から IntDefs に変更しました。(I3ac51)DeviceTypes
列挙型のStringDef
が [Device] のIntDefs
に移動しました。(I3abf3)- 互換性のある実装がない SDK バージョンで false を返す
HealthConnectClient.isApiSupported()
を追加しました。HealthConnectClient.isAvailable->isProviderAvailable
に変更しました。(I3674e)
バグの修正
- 1 未満の
HeartRate beatsPerMinute
値を禁止します。(I6052f) @JvmDefaultWithCompatibility
アノテーションを追加しました。(I8f206)
バージョン 1.0.0-alpha07
2022 年 10 月 24 日
androidx.health.connect:connect-client:1.0.0-alpha07
がリリースされました。バージョン 1.0.0-alpha07 に含まれる commit については、こちらをご覧ください。
API の変更
- デフォルト値がないレコード引数は、デフォルト値がある引数の前に配置されます。整合性を保つため、
Instant
引数とZoneOffset
引数は常に先頭に配置されます。(Id618c) HealthConnectClient.getOrCreate#packageNames
をproviderPackageNames
に変更しました。(Id81e4)
バグの修正
- レコード フィールド値の検証を追加しました。指定された値が妥当な範囲の外にある場合、極端に誤った値について
IllegalArgumentExceptions
をスローします。(Ie171d) - 該当する場合は、レコード開始時間が終了時間より前かどうかを検証します。(I02460)
バージョン 1.0.0-alpha06
2022 年 10 月 5 日
androidx.health.connect:connect-client:1.0.0-alpha06
がリリースされました。バージョン 1.0.0-alpha06 に含まれる commit については、こちらをご覧ください。
バグの修正
バージョン 1.0.0-alpha05
2022 年 9 月 21 日
androidx.health.connect:connect-client:1.0.0-alpha05
がリリースされました。バージョン 1.0.0-alpha05 に含まれる commit については、こちらをご覧ください。
API の変更
Metadata.uid
をMetadata.id
に変更し、関連する CRUD API 全体で用語recordId
を統一しました。(I3d1d2)PermissionController.createRequestPermissionActivityContract
をインスタンス メソッドではなく静的メソッドにしました。PermissionController.createRequestPermissionResultContract
に変更しました。(Icd2fe)BloodGlucoseRecord
の単位タイプとしてBloodGlucose
を追加しました。(I97678)MenstruationRecord
をMenstruationFlowRecord
に変更しました。(I3b88e)
バグの修正
- クライアント プロセスからフォアグラウンドのデータを伝播しない意図しない動作を修正しました。(Ifb44c)
バージョン 1.0.0-alpha04
2022 年 8 月 24 日、androidx.health.connect:connect-client:1.0.0-alpha04
がリリースされました。バージョン 1.0.0-alpha04 に含まれる commit については、こちらをご覧ください。
androidx.health.connect への移行
1.0.0-alpha04 以降、androidx.health:health-connect-client
は androidx.health.connect:connect-client
に移行されました。以前のバージョンのヘルスコネクトについては、androidx.health ページをご覧ください。
移行するには、単に依存関係のインポートを androidx.health:health-connect-client:1.0.0-alpha03
から androidx.health.connect:connect-client:1.0.0-alpha04
に変更します。
新機能
- API 呼び出し用の組み込みのデバッグログをオプションとして追加しました(リンク)。
API の変更
- メタデータ
clientId
をclientRecordId
に、clientVersion
をclientRecordVersion
に変更しました。(リンク) - メタデータの uid を読みやすくし、null 可能性はなくなりました。(リンク)
- 質量単位にポンドを追加しました(リンク)
DeletionChange.deleteUid
を uid に変更しました(リンク)- Permission を HealthPermission に変更しました。これにより、Android フレームワークの権限の曖昧さを回避できます。(リンク)
バグの修正