我正在研究带有计步器功能的医疗保健应用程序。我正在使用CMPedometer类开始计步,但是我正在寻找一种方法,可以将午夜后将计步器的“步数”设置为0,并在第二天(检测到运动时)开始计步。依此类推。
我曾尝试弄乱NSDate类,但实际上很难像上面解释的那样将它们连接起来。
myPedometer = CMPedometer()
myPedometer.startUpdates(from: NSDate() as Date, withHandler: { (pedometerData, error) in
if let e = error {
print(e.localizedDescription)
return
}
guard let data = pedometerData else {
return
}
let myStep = data.numberOfSteps
self.stepLabel.text = "\(myStep)"
var date = NSDate
if date = 24:00 {
self.myPedometer.stopUpdates()
}
即使我尝试使用if语句停止计步器更新,我也不知道每天的步数可能会如何重置。
此外,X-Code会继续向最后一个if语句发送错误消息,说“无法将'int'类型的值分配给'NSDate.Type'类型。
答案 0 :(得分:0)
使用此功能获取2个日期之间的步数。
func queryPedometerData(from start: Date,
to end: Date,
withHandler handler: @escaping CMPedometerHandler)
更多细节请参考教程:https://medium.com/simform-engineering/count-steps-with-cmpedometer-on-iwatch-94b61bc3b87e