血圧データの書き込み

アプリは、com.google.blood_pressure に書き込むことで血圧データを記録できます。 あります。このデータ型では、各データポイントは 1 つの瞬間的な 血圧の読み取り。データポイントには、最高血圧と 最低血圧、測定中の体位、および身体の位置 場所を記録します

  • systolic フィールドと diastolic フィールドは必須で、他はすべて省略可能です。
  • systolic(大きい数字)と diastolic(小さい数字)の気圧: 単位は mmHg です。
  • 指定する場合、body position には次のいずれかの値を指定する必要があります。 <ph type="x-smartling-placeholder">
      </ph>
    • 1 - 立ち上がる
    • 2 - 座っています
    • 3 - 横たわっている
    • 4 - セミリクライニング
  • 指定する場合、測定ロケーションには次のいずれかの値を指定する必要があります。

    • 1 - 左手首
    • 2 - 右手首
    • 3 - 左上腕
    • 4 - 右上腕

Android

血圧のデータポイントを書き込むには、新しい DataSource を作成します /TYPE_BLOOD_PRESSURE、 必要があります。

val bloodPressureSource = DataSource.Builder()
    .setDataType(TYPE_BLOOD_PRESSURE)
    // ...
    .build()

val bloodPressure = DataPoint.builder(bloodPressureSource)
    .setTimestamp(timestamp, TimeUnit.MILLISECONDS)
    .setField(FIELD_BLOOD_PRESSURE_SYSTOLIC, 120.0f)
    .setField(FIELD_BLOOD_PRESSURE_DIASTOLIC, 80.0f)
    .setField(FIELD_BODY_POSITION, BODY_POSITION_SITTING)
    .setField(
        FIELD_BLOOD_PRESSURE_MEASUREMENT_LOCATION,
        BLOOD_PRESSURE_MEASUREMENT_LOCATION_LEFT_UPPER_ARM)
    .build()

REST

データソースを作成する

血圧のデータポイントを書き込むには、新しいデータソースを作成します

HTTP メソッド

POST

リクエスト URL

https://www.googleapis.com/fitness/v1/users/me/dataSources

リクエストの本文

{
  "dataStreamName": "BloodPressure",
  "type": "raw",
  "application": {
    "detailsUrl": "http://example.com",
    "name": "My Example App",
    "version": "1"
  },
  "dataType": {
    "name": "com.google.blood_pressure"
   }
}

レスポンス

データソースが正常に作成されると、200 OK HTTP が表示されます。 レスポンス ステータス コード。レスポンスの本文には、レスポンスの JSON 表現が データソース(datasource.dataStreamId プロパティを含む)。この ID を使用 dataSourceId として指定します。

血圧データを追加

com.google.blood_pressure 型のデータポイントを作成して、データを追加します。

HTTP メソッド

PATCH

リクエスト URL

https://www.googleapis.com/fitness/v1/users/me/dataSources/datasource.dataStreamId/datasets/1574159699023000000-1574159699023000000

リクエストの本文

わかりやすくするため、以下の JSON 本文にはコメントのアノテーションを付けています。 ヘルスフィールド定数の使用です

  {
    "dataSourceId": "datasource.dataStreamId",
    "maxEndTimeNs": 1574159699023000000,
    "minStartTimeNs": 1574159699023000000,
    "point": [
      {
        "dataTypeName": "com.google.blood_pressure",
        "endTimeNanos": 1574159699023000000,
        "startTimeNanos": 1574159699023000000,
        "value": [
          {
            "fpVal": 120.0  // systolic
          },
          {
            "fpVal": 80.0  // diastolic
          },
          {
            "intVal": 2  // Body position enum value for sitting
          },
          {
            "intVal": 3  // Location enum value for left upper arm
          }
        ]
      }
    ]
  }