データを削除する

データの削除は、ヘルスコネクトの CRUD オペレーションの要点です。このガイドではレコードを削除する 2 つの方法について説明します。

レコード ID を使用して削除する

レコード ID やアプリのクライアント レコード ID など、一意の識別子のリストを使用して、レコードを削除できます。deleteRecords を使用して、レコード ID 用とクライアント ID 用の 2 つの Strings リストを指定します。利用可能な ID がどちらかしかない場合は、片方のリストに emptyList() を設定します。

次のコード例は ID を使用して歩数データを削除する方法を示しています。

suspend fun deleteStepsByUniqueIdentifier(
    healthConnectClient: HealthConnectClient,
    idList: List<String>
) {
    try {
        healthConnectClient.deleteRecords(
            StepsRecord::class,
            idList = idList,
            clientRecordIdsList = emptyList()
        )
    } catch (e: Exception) {
        // Run error handling here
    }
}

期間を指定して削除する

フィルタで期間を指定して、データを削除することもできます。deleteRecords を使用して、開始と終了のタイムスタンプ値を受け取る TimeRangeFilter オブジェクトを指定します。

次のコード例は、特定期間の歩数データを削除する方法を示しています。

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