डेटा मिटाना

डेटा मिटाना, Health Connect में CRUD ऑपरेशनों का एक अहम हिस्सा है. इस गाइड में, रिकॉर्ड मिटाने के दो तरीके बताए गए हैं.

रिकॉर्ड आईडी का इस्तेमाल करके मिटाना

रिकॉर्ड मिटाने के लिए, यूनीक आइडेंटिफ़ायर की सूची का इस्तेमाल किया जा सकता है. जैसे, रिकॉर्ड आईडी और आपके ऐप्लिकेशन का क्लाइंट रिकॉर्ड आईडी. deleteRecords का इस्तेमाल करें. साथ ही, इसे Strings की दो सूचियां दें. एक सूची रिकॉर्ड आईडी के लिए और दूसरी सूची क्लाइंट आईडी के लिए. अगर आपके पास सिर्फ़ एक आईडी उपलब्ध है, तो उसे दूसरी सूची में emptyList() के तौर पर सेट किया जा सकता है.

यहां दिए गए कोड के उदाहरण में, आईडी का इस्तेमाल करके, कदमों की जानकारी वाला डेटा मिटाने का तरीका दिखाया गया है:

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 ऑब्जेक्ट के साथ उपलब्ध कराएं. यह ऑब्जेक्ट, शुरू और खत्म होने के टाइमस्टैंप की वैल्यू लेता है.

यहां दिए गए कोड के उदाहरण में, किसी खास समय का Steps डेटा मिटाने का तरीका बताया गया है:

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