您的应用可以通过写入 com.google.blood_pressure 数据类型来记录血压数据。在此数据类型中,每个数据点都代表一次瞬时血压读数。数据点包含收缩压和舒张压、读取时的身体姿势以及执行测量时身体部位的字段。
systolic和diastolic字段是必需的,所有其他字段都是可选的。systolic(上部数字)和diastolic(下部数字)的压力以 mmHg 为单位进行测量。- 如果指定了身体姿势,则必须具有以下某个值:
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
Request 网址
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
Request 网址
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
}
]
}
]
}