Usuń dane

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
    }
}