Usuń dane

Usuwanie danych to kluczowy element operacji CRUD w Health Connect. Ten przewodnik zawiera opis dwóch sposobów usuwania rekordów.

Usuń przy użyciu identyfikatorów rekordów

Możesz usuwać rekordy, korzystając z listy unikalnych identyfikatorów, takich jak identyfikator rekordu. oraz identyfikator rekordu klienta aplikacji. Używaj deleteRecords, prześlij mu dwie listy Strings: jedną dla identyfikatorów rekordów, a drugą dla identyfikatorów Client ID (Identyfikator klienta). Jeśli masz tylko jeden z tych identyfikatorów, możesz ustawić emptyList() z drugiej listy.

Ten przykładowy kod pokazuje, jak usunąć dane 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ń na podstawie zakresu czasu

Możesz też usunąć dane, filtrując według zakresu czasu. Użyj aplikacji deleteRecords i przekaż ją wraz z TimeRangeFilter obiekt, który zajmuje sygnatury czasowej rozpoczęcia i zakończenia.

Poniższy przykładowy kod pokazuje, jak usunąć dane kroków na konkretne godziny:

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