데이터 삭제는 헬스 커넥트의 CRUD 작업의 핵심 부분입니다. 이 가이드에서는 레코드를 삭제하는 두 가지 방법을 보여줍니다.
레코드 ID를 사용하여 삭제
레코드 ID 및 앱의 클라이언트 레코드 ID와 같은 고유 식별자 목록을 사용하여 레코드를 삭제할 수 있습니다. deleteRecords
를 사용한 다음, 이를 두 개의 Strings
목록(레코드 ID에 대한 목록과 클라이언트 ID에 대한 목록)에 제공합니다. ID 중 하나만 사용 가능한 경우 다른 목록에서 emptyList()
를 설정할 수 있습니다.
다음 코드 예에서는 ID를 사용하여 걸음 수 데이터를 삭제하는 방법을 보여줍니다.
suspend fun deleteStepsByUniqueIdentifier(
healthConnectClient: HealthConnectClient,
idList: List<String>
) {
try {
healthConnectClient.deleteRecords(
StepsRecord::class,
idList = idList,
clientRecordIdsList = emptyList()
)
} catch (e: Exception) {
// Run error handling here
}
}
기간을 사용하여 삭제
기간을 필터로 사용하여 데이터를 삭제할 수도 있습니다.
deleteRecords
를 사용한 다음, 이를 시작 및 종료 타임스탬프 값을 갖는 TimeRangeFilter
객체에 제공합니다.
다음 코드 예에서는 특정 시간의 걸음 수 데이터를 삭제하는 방법을 보여줍니다.
suspend fun deleteStepsByTimeRange(
healthConnectClient: HealthConnectClient,
startTime: Instant,
endTime: Instant
) {
try {
healthConnectClient.deleteRecords(
StepsRecord::class,
timeRangeFilter = TimeRangeFilter.between(startTime, endTime)
)
} catch (e: Exception) {
// Run error handling here
}
}