最近在做和微信运动差不多的一个功能 就是从用户手机的健康里面获取用户的运动数据。。。
先在开发者中心 选择healthKit 重新生成证书
然后在xcode里面选择
然后就是配置健康数据的权限
到这环境算是配置好了
下来就是操作了
头文件
#import <CoreMotion/CoreMotion.h>
CMPedometer 健康数据操作的工具类
//判断是否支持获取健康步数
[CMPedometer isStepCountingAvailable]
这个是苹果官方提供的获取某个时间段的健康数据的方法
参数一:指定的时间戳的范围 必须为负数 参数二:结束时间的时间戳
/*
* queryPedometerDataFromDate:toDate:withHandler:
*
* Discussion:
* Queries for the user's pedestrian activity in the given time range. Data
* is available for up to 7 days. The data returned is computed from a
* system-wide history that is continuously being collected in the
* background. The result is returned on a serial queue.
*/
- (void)queryPedometerDataFromDate:(NSDate *)start
toDate:(NSDate *)end
withHandler:(CMPedometerHandler)handler;
//这个是方法的调用
if ([CMPedometer isStepCountingAvailable]) {
// NSLog(@"%f",[self dateCreat]);
NSInteger number = [self dateCreat];
NSLog(@"%ld",(long)number);
[_pedometer queryPedometerDataFromDate:[NSDate dateWithTimeIntervalSinceNow:[self dateCreat]] toDate:[NSDate date] withHandler:^(CMPedometerData * _Nullable pedometerData, NSError * _Nullable error) {
NSLog(@"步数====%@",pedometerData.numberOfSteps);
NSLog(@"距离====%@",pedometerData.distance);
NSLog(@"开始时间====%@",pedometerData.startDate);
}
}];
} else {
NSLog(@"记步功能不可用");
}
��������������������