在ios8中,ios7新增加的计步器CMStepCounter已经过时,而用CMPedometer代替。
具体代码(CMStepCounter)
if ([CMStepCounter isStepCountingAvailable]) {
self.stepCounter=[[CMStepCounter alloc]init];
NSOperationQueue *queue=[[NSOperationQueue alloc]init];
[self.stepCounter startStepCountingUpdatesToQueue:queue updateOn:5 withHandler:^(NSInteger numberOfSteps, NSDate * _Nonnull timestamp, NSError * _Nullable error) {
self.stepLabel.text=[NSString stringWithFormat:@"用户已经行走了【%d】步!",numberOfSteps];
}];
}
(CMPedometer)
if ([CMPedometer isStepCountingAvailable]) {
self.pedometer=[[CMPedometer alloc]init];
[self.pedometer startPedometerUpdatesFromDate:[NSDate date] withHandler:^(CMPedometerData * _Nullable pedometerData, NSError * _Nullable error) {
CMPedometerData *data=(CMPedometerData *)pedometerData;
NSNumber *number=data.numberOfSteps;
self.stepLabel.text=[NSString stringWithFormat:@"用户已经行走了【%@】步!",number];
}];
}