iOS CMPedometer的使用

一.介紹
CMPedometer是蘋果8.0推出的,之前的只能從物理引擎的框架去做,很是尷尬。而且不支持32位的系統,意味者iphone5和以後的型號都不支持這個。現在普遍好多了,現在的公司一般最低適配到8.0或者直接10.0系統,再也不用擔心這個問題了。
二.使用
先聲明一個屬性,不然他容易泄露,蘋果的好多框架都是這樣的,不能直接使用,得千萬注意
@property(nonatomic,strong)CMPedometer pedometer;

三.判斷權限
pedometer =[[CMPedometer alloc] init];
pragma mark返回當天00:00

  • (NSDate )obtainTodayDate{
    return [NSDate date];
    }

pragma mark返回現在的時間

  • (NSDate )obtainNextTodayDate{

NSCalendar calendar = [NSCalendar currentCalendar];
NSDate now = [NSDate date];
NSDateComponents components = [calendar components:NSCalendarUnitYear|NSCalendarUnitMonth|NSCalendarUnitDay fromDate:now];
NSDate startDate = [calendar dateFromComponents:components];

return startDate;
}

[pedometer queryPedometerDataFromDate:nil toDate:nil withHandler:^(CMPedometerData Nullable pedometerData, NSError Nullable error) {

}]
四.注意
1.因爲我獲取的是當天的時間,所以做法就很簡單了,獲取現在的時間,然後獲取第二天凌晨的時間,剛好就是一整天的時間
獲取步數,這個不能格式化成爲本地時間,之前格式化過成爲北京時間發現錯位8個小時.
2.蘋果的這個獲取步數,不能每秒實時獲取,容易錯誤,儘量1分鐘獲取一次好點,這樣能保證獲取成功
3.還有其他的方法,基本上很少用到,用到了直接看下注視就可以很清楚的看明白。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章