写入血压数据

您的应用可以通过写入 com.google.blood_pressure 来记录血压数据 数据类型。在此数据类型中,每个数据点代表一个瞬时 血压读数。数据点包含收缩压和 舒张压、读取期间的身体位置以及身体的位置 进行测量的位置

  • systolicdiastolic 字段为必填字段,其他所有字段均为选填字段。
  • systolic(较大数字)和 diastolic(较小数字)的压力为 以毫米汞柱为单位。
  • 如果已指定,正文位置必须具有以下值之一: <ph type="x-smartling-placeholder">
      </ph>
    • 1 - 站立
    • 2 - 坐下
    • 3 - 躺着
    • 4 - 半卧
  • 如果已指定,测量位置必须具有以下值之一:

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

Android

如需写入血压数据点,请创建一个新的 DataSourceTYPE_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

Request 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 响应状态代码。响应正文包含 数据源,包括 datasource.dataStreamId 属性。使用此 ID 用作 dataSourceId 以添加数据。

添加血压数据

通过创建 com.google.blood_pressure 类型的数据点来添加数据。

HTTP 方法

PATCH

Request 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
          }
        ]
      }
    ]
  }