1.在info.plist设置
![]()
2.实现
首先导入CoreMotion
import CoreMotion
//声明一个计步器变量
let pedometer = CMPedometer()
//判断设备是否支持计步器
if CMPedometer.isStepCountingAvailable(){
//开始更新计步器数据
pedometer.startUpdates(from: Date(), withHandler: { (data, error) in
guard error == nil else{return}
//data 为CMPedometerData对象,属性如下:
data?.distance //获取行走距离
data?.numberOfSteps //获取行走步数
data?.floorsDescended //下了多少台阶
data?.floorsAscended //上了多少台阶
data?.endDate //结束时间
data?.startDate //开始时间
data?.currentPace //iOS 9以上,获取步速
data?.currentCadence //节奏
data?.averageActivePace//iOS 10以上,平均速度
})
}
//停止更新
pedometer.stopUpdates()
//该方法用于检索指定的开始和结束日期之间的数据,不超过7天
pedometer.queryPedometerData(from: Date(), to: Date()) { (data, error) in
}