iOS通过CMPedometer获取步数,获取的步数不能进行修改

CMPedometer获取步数,获取的步数用户不能进行修改

第一步:配置info.plist里边的获取运动权限

1
2
<key>NSMotionUsageDescription</key>
 <string>请允许使用运动健康</string>

 

第二步:引入头文件

1
2
3
#import <CoreMotion/CoreMotion.h>
 
@property (nonatomic, strong) CMPedometer * pedometer;

 第三步:获取步数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// 获取步数
-(void)getHealthStep
{
    if ([CMPedometer isStepCountingAvailable]) {
        _pedometer = [[CMPedometer alloc] init];
             
        NSDateFormatter *df = [[NSDateFormatter alloc] init];
        [df setDateFormat:@"yyyy-MM-dd"];
        NSString *yestr = [df stringFromDate:[NSDate date]];
        [df setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
        //今天0点时间
        NSDate *d = [df dateFromString:[NSString stringWithFormat:@"%@ 00:00:00", yestr]];
        //查询0点到当前时间的数据
        [_pedometer queryPedometerDataFromDate:d toDate:[NSDate dateWithTimeIntervalSinceNow:0] withHandler:^(CMPedometerData * _Nullable pedometerData, NSError * _Nullable error) {
 
            if (error) {
                NSLog(@"error ===%@", error);
            }
            else {
                NSLog(@"步数====%@", pedometerData.numberOfSteps);
                NSLog(@"距离====%@", pedometerData.distance);
            }
        }];
    }
    else {
        NSLog(@"记步功能不可用");
    }
}

 

posted @   任淏  阅读(398)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示