Usuwanie danych jest kluczową częścią operacji CRUD w Health Connect. Z tego przewodnika dowiesz się, jak usuwać rekordy na 2 sposoby.
Usuwanie za pomocą identyfikatorów rekordów
Możesz usuwać rekordy, korzystając z listy unikalnych identyfikatorów, takich jak identyfikator rekordu i identyfikator rekordu klienta aplikacji. Użyj funkcji deleteRecords
i podaj jej 2 listy wartości Strings
: jedną z identyfikatorami rekordów, a drugą z identyfikatorami klientów. Jeśli masz tylko jeden z 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
}
}
Usuwanie za pomocą zakresu czasu
Możesz też usunąć dane, używając zakresu czasu jako filtra.
Użyj deleteRecords
i podaj obiekt TimeRangeFilter
, który przyjmuje wartości sygnatury czasowej rozpoczęcia i zakończenia.
Poniższy przykładowy kod pokazuje, jak usunąć dane dotyczące kroków z określonego przedziału czasu:
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
}
}