Получить дату/время для HKQuantitySample -> heartRateSample (Watch OS2) из ​​HealthKit

Я использую

-(void)updateHeartRate:(NSArray<__kindof HKSample *> *)samples

для получения HearteRate от внутреннего датчика часов. В зависимости от времени, когда приложение находится в фоновом режиме (деактивировано), необходимо получить несколько образцов heartRateSamples, используя:

if (samples.count>0) {

    for (HKQuantitySample *heartRateSample in samples) {
        dispatch_async(dispatch_get_main_queue(), ^{
            if (heartRateSample) {
            NSLog(@"HEART RATE: %@", [@([heartRateSample.quantity doubleValueForUnit:heartRateUnit]) stringValue]);
            }
        });
    }
}

но как я могу получить дату/время, когда конкретный образец был записан в HealthKit?


person Ing. Ron    schedule 20.10.2015    source источник


Ответы (1)


Свойства startDate и endDate образца количества описывают, когда был взят образец:

HK_CLASS_AVAILABLE_IOS(8_0)
@interface HKSample : HKObject

@property (readonly, strong) HKSampleType *sampleType;

@property (readonly, strong) NSDate *startDate;
@property (readonly, strong) NSDate *endDate;

@end
person jrushing    schedule 20.10.2015
comment
Вот новая строка NSLog: NSLog(@%@ - ЧСС: %@ / Дата начала: %@ / Конечная дата: %@, [собственный класс], [@([heartRateSample.quantity doubleValueForUnit:heartRateUnit]) stringValue], [ форматер stringFromDate:heartRateSample.startDate], [форматер stringFromDate:heartRateSample.endDate]); - person Ing. Ron; 21.10.2015