探索iOS計(jì)步器功能

我的一個(gè)朋友是從事外出銷售工作,老板不但要看他每天的業(yè)績,也會去關(guān)注他每天在某個(gè)APP的行走步數(shù)。你應(yīng)該知道的,業(yè)績好一切OK。要是業(yè)績不行,步數(shù)也少,那就步步驚心了。接下來他問了我里面的原理。我錯(cuò)誤的告訴他是每隔多長時(shí)間利用定位去拿到經(jīng)緯度然后計(jì)算出來的。太傻太天真。

不廢話了,先看看 蘋果官方的描述

Use a CMPedometer object to fetch pedestrian-related data. You use a pedometer object to retrieve step counts and other information about the distance traveled and the number of floors ascended or descended. The pedometer object manages a cache of historic data that you can query or you can ask for live updates as the data is processed.

使用CMPedometer 對象來獲取行走相關(guān)的數(shù)據(jù)。你能使用pedometer對象去重新獲得步數(shù),距離,上下樓層的層數(shù)等信息。pedometer對象管理著一個(gè)存儲歷史數(shù)據(jù)的容器供你查詢,而且你也可以實(shí)時(shí)去更新當(dāng)容器里面的數(shù)據(jù)發(fā)生了處理變化。

首先你得導(dǎo)入計(jì)步的框架
#import <CoreMotion/CoreMotion.h>
#define OneDayTime 606024

_pedonmeter = [[CMPedometer alloc] init];
 //判斷設(shè)備是否能夠使用計(jì)步功能
if ([CMPedometer isStepCountingAvailable]) {
    //查詢以前的數(shù)據(jù)
   [_pedonmeter queryPedometerDataFromDate:[NSDate dateWithTimeIntervalSinceNow:-OneDayTime] toDate:[NSDate dateWithTimeIntervalSinceNow:0] withHandler:^(CMPedometerData * _Nullable pedometerData, NSError * _Nullable error) {
       
       if (error)
       {
           NSLog(@"error===%@",error);
       }
       else {
           NSLog(@"步數(shù)===%@",pedometerData.numberOfSteps);
           NSLog(@"距離===%@",pedometerData.distance);
           NSLog(@"上的樓梯層數(shù)===%@",pedometerData.floorsAscended);
           NSLog(@"下的樓梯層數(shù)===%@",pedometerData.floorsDescended);

       }
   }];
    
    
    //實(shí)時(shí)更新
    [_pedonmeter startPedometerUpdatesFromDate:[NSDate date] withHandler:^(CMPedometerData * _Nullable pedometerData, NSError * _Nullable error) {
          NSLog(@"實(shí)時(shí)更新每米所需要的時(shí)間(秒)===%@",pedometerData.currentPace);
          NSLog(@"實(shí)時(shí)更新每秒走的步數(shù)===%@",pedometerData.currentCadence);
    }];
}else{
      NSLog(@"設(shè)備暫不支持該功能");
}

PS :CMPedometer最低只支持iOS8。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • PLEASE READ THE FOLLOWING APPLE DEVELOPER PROGRAM LICENSE...
    念念不忘的閱讀 13,681評論 5 6
  • **2014真題Directions:Read the following text. Choose the be...
    又是夜半驚坐起閱讀 11,242評論 0 23
  • *面試心聲:其實(shí)這些題本人都沒怎么背,但是在上海 兩周半 面了大約10家 收到差不多3個(gè)offer,總結(jié)起來就是把...
    Dove_iOS閱讀 27,656評論 30 472
  • 看了好多手帳達(dá)人的展示,按耐不住自己躍躍欲試的心,終于靜下心來,開始自己的手帳記錄歷程! 因?yàn)樽罱诳葱墙?..
    懶惰的妮子閱讀 454評論 3 6
  • 赫拉利說:真正有權(quán)勢的人類組織根本不在乎真相如何,他們在乎的是把虛構(gòu)出來的信仰強(qiáng)加給每個(gè)人,并且利用這個(gè)信仰...
    吳佟閱讀 210評論 0 0

友情鏈接更多精彩內(nèi)容