CMPedometer是一個(gè)iOS8之后的計(jì)步對(duì)象,屬于<CoreMotion/CoreMotion.h>庫(kù)里的。iOS7之前是CMStepCounter用這個(gè)類實(shí)現(xiàn)。沒(méi)想到蘋果會(huì)有一個(gè)專業(yè)的計(jì)步類,而自己冥思苦想的如何實(shí)現(xiàn)一個(gè)計(jì)步功能。。并且14年有一次面試被問(wèn)題如何實(shí)現(xiàn)計(jì)步,我并沒(méi)答上來(lái),直到現(xiàn)在還耿耿于懷,沒(méi)想到原本就有這個(gè)類。。尷尬了
1.先引用頭文件
#import <CoreMotion/CoreMotion.h>
2.定義屬性
@property(nonatomic, strong) CMPedometer *pedometer;
3.具體使用
if ([CMPedometer isStepCountingAvailable]) {
NSDate *date1 = [NSDate dateWithTimeIntervalSinceNow:-60*60*2];//兩小時(shí)前
NSDate *date2 = [NSDate dateWithTimeIntervalSinceNow:-60*60*1];//一小時(shí)前
_pedometer = [[CMPedometer alloc] init];
[_pedometer queryPedometerDataFromDate:date1 toDate:date2 withHandler:^(CMPedometerData * _Nullable pedometerData, NSError * _Nullable error) {
if (!error) {
NSLog(@"");
} else {
NSLog(@"%@", error);
}
}];
}