헬스 커넥트는 말초 체온을 측정하는 피부 온도 데이터 유형을 제공합니다. 이 측정은 수면의 질, 생식 건강 및 잠재적 질병의 발병 여부를 감지하는 데 특히 유용한 신호입니다.
필수 권한
헬스 커넥트의 다른 데이터 유형과 마찬가지로 피부 온도에 대한 액세스는 READ_SKIN_TEMPERATURE
및 WRITE_SKIN_TEMPERATURE
이라는 권한 쌍으로 보호됩니다.
피부 온도 기록에 포함된 정보
피부 온도 측정은 기록으로 구성됩니다. 각 레코드는 다음 정보로 구성됩니다.
- 기준 온도(섭씨 또는 화씨) 이 값은 앱 UI에서 시각화하는 데 가장 유용한 선택적 값입니다.
- 피부 온도의 델타 목록으로, 각 델타는 마지막 측정 이후의 피부 온도 변화를 보여줍니다. 기준 온도가 제공된 경우 이러한 변화량은 동일한 온도 단위를 사용해야 합니다.
- 측정이 이루어진 사용자 신체의 위치입니다(손가락, 발가락, 손목).
지원되는 집계
헬스 커넥트를 사용하면 특정 대수 목록에 대해 다음과 같은 집계 값을 가져올 수 있습니다.
- 최솟값
- 최댓값
- 평균값
피부 온도 읽기
다음 코드 스니펫은 Jetpack 라이브러리를 사용하여 피부 온도 측정값을 읽는 방법을 보여줍니다.
suspend fun readSkinTemperatures() {
// Error handling, permission check, and feature availability check
// aren't included.
// Record includes measurements during the past hour.
val recordEndTime = Instant.now()
val recordStartTime = recordEndTime.minusSeconds(60 * 60)
val response = healthConnectClient.readRecords(
ReadRecordsRequest<SkinTemperatureRecord>(
timeRangeFilter = TimeRangeFilter.between(
recordStartTime, recordEndTime)
)
)
for (skinTemperatureRecord in response.records) {
// Process each skin temperature record here.
}
}
피부 온도 쓰기
다음 코드 스니펫은 Jetpack 라이브러리를 사용하여 피부 온도 측정값을 쓰는 방법을 보여줍니다.
suspend fun writeSkinTemperatures(): InsertRecordsResponse {
// Error handling, permission check, and feature availability check
// aren't included.
// Record includes measurements during the past hour.
val recordEndTime: ZonedDateTime = now()
val recordStartTime: ZonedDateTime = recordEndTime.minusHours(1)
return healthConnectClient.insertRecords(
// For this example, there's only one skin temperature record.
listOf(
SkinTemperatureRecord(
startTime = recordStartTime.toInstant(),
startZoneOffset = recordStartTime.offset,
endTime = recordEndTime.toInstant(),
endZoneOffset = recordEndTime.offset,
deltas = listOf(
SkinTemperatureRecord.Delta(
recordEndTime.minusMinutes(50), celsius(0.5)),
SkinTemperatureRecord.Delta(
recordEndTime.minusMinutes(30), celsius(-0.7))
),
measurementLocation =
SkinTemperatureRecord.MEASUREMENT_LOCATION_FINGER
)
)
)
}