Usuwanie danych to kluczowa część operacji CRUD w Health Connect. W tym przewodniku opisujemy dwa sposoby usuwania rekordów.
Usuń przy użyciu identyfikatorów rekordów
Możesz usunąć rekordy, korzystając z listy unikalnych identyfikatorów, takich jak identyfikator rekordu i identyfikator rekordu klienta aplikacji. Użyj deleteRecords
i podaj 2 listy Strings
– jedną dla identyfikatorów rekordów i jedną dla identyfikatorów klientów. Jeśli masz tylko jeden z dostępnych identyfikatorów, możesz ustawić emptyList()
na drugiej liście.
Poniższy przykładowy kod pokazuje, jak usunąć dane dotyczące kroków za pomocą ich identyfikatorów:
suspend fun deleteStepsByUniqueIdentifier(
healthConnectClient: HealthConnectClient,
idList: List<String>
) {
try {
healthConnectClient.deleteRecords(
StepsRecord::class,
idList = idList,
clientRecordIdsList = emptyList()
)
} catch (e: Exception) {
// Run error handling here
}
}
Usuń za pomocą zakresu czasu
Możesz też usunąć dane, używając zakresu czasu jako filtra.
Użyj deleteRecords
i podaj mu obiekt TimeRangeFilter
, który ma wartości sygnatury czasowej rozpoczęcia i zakończenia.
Poniższy przykładowy kod pokazuje, jak usunąć dane kroków w określonym czasie:
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
}
}