CMPedometer(计步器)使用,获取用户行走步数、距离等信息

CMPedometeri,iOS8.0及以后系统可以使用,统计某段时间内用户步数,距离信息。

1.引入框架CoreMotion.framework

2.#import <CoreMotion/CoreMotion.h>

3.@property (strong, nonatomic) CMPedometer *pedonmeter; 

4.

#pragma mark: 计步器的实现
- (void)stepCounter{
    
    //1、判断 可用
    if (![CMPedometer isStepCountingAvailable]) {
        NSLog(@"计步器不可用");
        return;
    }
    
    //2、创建
    _pedonmeter = [[CMPedometer alloc]init];
    
    //3、开始计步
    [_pedonmeter startPedometerUpdatesFromDate:[NSDate date] withHandler:^(CMPedometerData * _Nullable pedometerData, NSError * _Nullable error) {

        if (error)
        {
            NSLog(@"error===%@",error);
        }
        else {
            NSLog(@"步数===%@",pedometerData.numberOfSteps);
            NSLog(@"距离===%@",pedometerData.distance);
        }
    
        
    }];
    

}

 

备注:

如果出现以下错误,是因为CMPedometer回调时,对象已经没有了,所以声明为属性就可以了。

Error Domain=CMErrorDomain Code=10"The operation couldn’t be completed. (CMErrorDomain error 103.)"

你可能感兴趣的:(CMPedometer(计步器)使用,获取用户行走步数、距离等信息)