计步器: iOS7开始可以使用CMStepCounter获取用户的走路步数, iOS8更新了健康应用后, 开始使用CMPedometer获取用户的走路步数/距离/楼层等信息,具体代码如下:
- (void)viewDidLoad {
[super viewDidLoad];
//1. 判断是否可用
if (![CMPedometer isStepCountingAvailable]) {
return;
}
//2. 创建计步器
self.pedometer = [CMPedometer new];
//3. 开始统计数据
[self.pedometer startPedometerUpdatesFromDate:[NSDate date] withHandler:^(CMPedometerData * _Nullable pedometerData, NSError * _Nullable error) {
//4. 让界面发生改变
[self performSelectorOnMainThread:@selector(updateUI:) withObject:pedometerData.numberOfSteps waitUntilDone:YES];
NSLog(@"number: %@",pedometerData.numberOfSteps);
}];
}
- (void)updateUI:(NSNumber *)numberOfSteps
{
self.label.text = [NSString stringWithFormat:@"您当前一共走了%@步..",numberOfSteps];
}