앱은 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
요청 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 속성을 비롯한 데이터 소스의 JSON 표현이 포함되어 있습니다. 이 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
}
]
}
]
}