Skip to content

Commit 504a3c9

Browse files
author
Nesh108
committed
Added fixes to heartrate function
1 parent 202a4ca commit 504a3c9

File tree

1 file changed

+12
-5
lines changed

1 file changed

+12
-5
lines changed

RCTAppleHealthKit/RCTAppleHealthKit+Methods_Vitals.m

+12-5
Original file line numberDiff line numberDiff line change
@@ -15,17 +15,24 @@ @implementation RCTAppleHealthKit (Methods_Vitals)
1515
- (void)vitals_saveHeartRateSample:(NSDictionary *)input callback:(RCTResponseSenderBlock)callback
1616
{
1717
NSDate *timeHeartRateSampleWasTaken = [RCTAppleHealthKit dateFromOptions:input key:@"date" withDefault:[NSDate date]];
18-
double heartRateValue = [RCTAppleHealthKit doubleFromOptions:input key:@"value" withDefault:(double)60]; // Default HR is 60
19-
18+
double heartRateValue = [RCTAppleHealthKit doubleFromOptions:input key:@"value" withDefault:-99];
19+
if(heartRateValue == -99){
20+
callback(@[RCTMakeError(@"heartRateValue is required in options", nil, nil)]);
21+
return;
22+
}
23+
24+
HKUnit *count = [HKUnit countUnit];
25+
HKUnit *minute = [HKUnit minuteUnit];
26+
HKUnit *unit = [RCTAppleHealthKit hkUnitFromOptions:input key:@"unit" withDefault:[count unitDividedByUnit:minute]];
27+
2028
HKQuantitySample* heartRate = [HKQuantitySample quantitySampleWithType:[HKQuantityType quantityTypeForIdentifier:HKQuantityTypeIdentifierHeartRate]
21-
quantity:[HKQuantity quantityWithUnit:[HKUnit unitFromString: @"count/min"] doubleValue:heartRateValue]
29+
quantity:[HKQuantity quantityWithUnit:unit doubleValue:heartRateValue]
2230
startDate:timeHeartRateSampleWasTaken
2331
endDate:timeHeartRateSampleWasTaken];
2432

25-
// Save the HeartRate Sample to HealthKit //
2633
[self.healthStore saveObject:heartRate withCompletion:^(BOOL success, NSError *error) {
2734
if (!success) {
28-
NSLog(@"An error occured saving the heart rate sample %@. The error was: ", error);
35+
NSLog(@"An error occured saving the heart rate sample: %@", error);
2936
callback(@[RCTMakeError(@"An error occured saving the heart rate sample", error, nil)]);
3037
return;
3138
}

0 commit comments

Comments
 (0)