Das Löschen von Daten ist ein wichtiger Teil der CRUD-Vorgänge in Health Connect. In dieser Anleitung erfahren Sie, wie Sie Einträge auf zwei Arten löschen können.
Mit Eintrags-IDs löschen
Sie können Einträge mithilfe einer Liste eindeutiger IDs wie der Datensatz-ID und der Client-Datensatz-ID Ihrer Anwendung löschen. Verwenden Sie deleteRecords
und stellen Sie zwei Listen mit Strings
bereit, eine für die Eintrag-IDs und eine für die Client-IDs. Wenn nur eine der IDs verfügbar ist, können Sie emptyList()
in der anderen Liste festlegen.
Das folgende Codebeispiel zeigt, wie Sie Schrittdaten anhand ihrer IDs löschen:
suspend fun deleteStepsByUniqueIdentifier(
healthConnectClient: HealthConnectClient,
idList: List<String>
) {
try {
healthConnectClient.deleteRecords(
StepsRecord::class,
idList = idList,
clientRecordIdsList = emptyList()
)
} catch (e: Exception) {
// Run error handling here
}
}
Mit einem Zeitraum löschen
Sie können Daten auch löschen, indem Sie einen Zeitraum als Filter verwenden.
Verwenden Sie deleteRecords
und geben Sie ein TimeRangeFilter
-Objekt an, das Zeitstempelwerte für Start und Ende annimmt.
Das folgende Codebeispiel zeigt, wie Sie Daten der Schrittdaten zu einer bestimmten Zeit löschen:
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
}
}