Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Swift Heart Rate Variability result conversion from ms to double

Tags:

So I'm trying to make an app where the user's heart rate variability is fetched and displayed to them. The issue is that Im not really sure how to convert the result I get from my query to a double, I have tried using

let quantity: HKQuantity? = result?.averageQuantity()
beats = quantity?.doubleValue(for: HKUnit.count().unitDivided(by: HKUnit.minute()))
print(beats)

but I would get the error "reason: 'Attempt to convert incompatible units: ms, count/min'" which is expected because the beats line is intended for average heart rate not heart rate variability. If i print out the quantity variable I do get the result back in this format "Optional(65.24 ms)".

My question is how do I properly convert the result from the first line from ms to a double? Or how can i display it on a label? Because in the ms form it won't work.

Thank for the help in advance guys

like image 640
Aligator Avatar asked Nov 11 '18 07:11

Aligator


1 Answers

Found a solution. This is how to convert the heart rate variability result from MS to a double value. You can then change it to a string

beats = quantity?.doubleValue(for: HKUnit.secondUnit(with: .milli))
like image 66
Aligator Avatar answered Oct 20 '22 06:10

Aligator