IOS 計步器

這篇博客介紹的是當前比較流行的“計步器”-只是簡單的知識點

計步器的實現在IOS8開始進行了改變。

但是我會對之前之后的都進行簡單介紹。

IOS 8 -

//
//  ViewController.m
//  CX 計步器
//
//  Created by ma c on 16/4/12.
//  Copyright ? 2016年 bjsxt. All rights reserved.
//

#import "ViewController.h"
#import <CoreMotion/CoreMotion.h>@interface ViewController ()@property (nonatomic, strong) CMStepCounter * counter;@end@implementation ViewController#pragma mark - <懶加載>
- (CMStepCounter *)counter{if (!_counter) {_counter = [[CMStepCounter alloc]init];}return _counter;
}- (void)viewDidLoad {[super viewDidLoad];//判斷計步器是否可用if (![CMStepCounter isStepCountingAvailable]) {NSLog(@"計步器不可用");return;}//開始計步//startStepCountingUpdatesToQueue 選擇在哪個線程里進行//updateOn 對應的是每隔幾秒后回調下面的block[self.counter startStepCountingUpdatesToQueue:[NSOperationQueue mainQueue] updateOn:2 withHandler:^(NSInteger numberOfSteps, NSDate * _Nonnull timestamp, NSError * _Nullable error) {if (error) {return ;}NSLog(@"可以在這里進行一些操作");}];
}@end

IOS 8 +

//
//  ViewController.m
//  CX 計步器
//
//  Created by ma c on 16/4/12.
//  Copyright ? 2016年 bjsxt. All rights reserved.
//

#import "ViewController.h"
#import <CoreMotion/CoreMotion.h>@interface ViewController ()@property (nonatomic, strong) CMPedometer * meter;@end@implementation ViewController#pragma mark - <懶加載>
- (CMPedometer *)meter{if (!_meter) {_meter = [[CMPedometer alloc]init];}return _meter;
}- (void)viewDidLoad {[super viewDidLoad];//判斷計步器是否可用if (![CMPedometer isStepCountingAvailable]) {NSLog(@"計步器不可用");return;}//開始計步//在一段時間內的部步數與距離[self.meter queryPedometerDataFromDate:[NSDate date] toDate:[NSDate dateWithTimeIntervalSinceNow:60*60] withHandler:^(CMPedometerData * _Nullable pedometerData, NSError * _Nullable error) {if (error){NSLog(@"error===%@",error);}else {NSLog(@"步數===%@",pedometerData.numberOfSteps);NSLog(@"距離===%@",pedometerData.distance);}}];
}@end

?

轉載于:https://www.cnblogs.com/xubaoaichiyu/p/5383399.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/396309.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/396309.shtml
英文地址,請注明出處:http://en.pswp.cn/news/396309.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

vue學習之二ECMAScript6標準

一、ECMAScript6標準簡述 ECMAScript 6.0&#xff08;以下簡稱 ES6&#xff09;是 JavaScript 語言的下一代標準&#xff0c;已經在 2015 年 6 月正式發布了。它的目標&#xff0c;是使得 JavaScript 語言可以用來編寫復雜的大型應用程序&#xff0c;成為企業級開發語言。 1.1E…

抖音吸粉_抖音吸粉5大實用方法首次分享!輕松實現粉絲10000+

抖音&#xff0c;是一款可以拍短視頻的音樂創意短視頻社交軟件&#xff0c;該軟件于2016年9月上線&#xff0c;是一個專注年輕人音樂短視頻社區。用戶可以通過這款軟件選擇歌曲&#xff0c;拍攝音樂短視頻&#xff0c;形成自己的作品。抖音APP僅推出半年&#xff0c;用戶量就突…

mapper mysql 主鍵_實現通用mapper主鍵策略兼容mysql和oracle

【原創文章&#xff0c;轉載請注明原文章地址&#xff0c;謝謝&#xff01;】1.直接用官方提供的注解方法是無法達到兼容效果的2.跟蹤源碼看看是否有其他方法3.這里有個genSql&#xff0c;可以看一下這個類4.創建一個自定義的處理類實現GenSql(代碼中是我實際項目中用到的策略&…

權限分配界面 純手工 僅用到bootstrap的架構 以及 c標簽

<div class"form-group"> <div class"row"> <label class"col-sm-2 control-label">配置權限</label> <div class"col-sm-10"> <c:forEach var"m" items…

數據管理與數據庫 大學課程_根據數據顯示的50種最佳免費在線大學課程

數據管理與數據庫 大學課程When I launched Class Central back in November 2011, there were around 18 or so free online courses, and almost all of them were from Stanford.當我在2011年11月推出Class Central時&#xff0c;大約有18項免費在線課程&#xff0c;幾乎所有…

每天一個linux命令(12):more命令

more命令&#xff0c;功能類似 cat &#xff0c;cat命令是整個文件的內容從上到下顯示在屏幕上。 more會以一頁一頁的顯示方便使用者逐頁閱讀&#xff0c;而最基本的指令就是按空白鍵&#xff08;space&#xff09;就往下一頁顯示&#xff0c;按 b 鍵就會往回&#xff08;back&…

java 面試題 由淺入深_面試官由淺入深的面試套路

閱讀文本大概需要3分鐘。從上圖看來面試官面試是有套路的&#xff0c;一不小心就一直被套路。0x01&#xff1a;Thread面試官&#xff1a;創建線程有哪幾種方式&#xff1f;應聘者&#xff1a;繼承Thread類、實現Runable接口、使用j.u.c中的線程池面試官&#xff1a;繼承Thread類…

怎么用centos7運行c語言程序_centos如何編譯c語言代碼

centos如何編譯c語言代碼,文件,選項,作用,鏈接,程序 centos如何編譯c語言代碼 易采站長站,站長之家為您整理了centos如何編譯c語言代碼的相關內容。 編譯c,c++代碼 安裝gcc 1、使用如下命令查詢 centos 官方gcc的所有包:yum -list gcc* 可安裝的軟件包gcc.x86_64gcc-c++.x86…

第四篇:基本數據類型及用法(1)

字符串&#xff08;str型&#xff09; -可以做加法&#xff0c;乘法 乘法例&#xff1a; n1"alex" n2n1*3 print(n2) #結果&#xff1a;alexalexalex -首字母大寫: capitalize() -所有字母變小寫: casefold()、lower() #casefold更牛&#xff0c;很多未知的對應關系也…

Android Studio 錯誤集

錯誤列表與解決方案: 1.Android studio Gradle project sync failed Android studio 構建項目出錯 Error:Unable to start the daemon process: could not reserve enough space for object heap.Please assign more memory to Gradle in the projects gradle.properties file.…

需求簡報_代碼簡報:我如何通過做自己喜歡的事情來獲得頂級技術實習

需求簡報Here are three stories we published this week that are worth your time:這是我們本周發布的三個值得您關注的故事&#xff1a; How I landed a top-tier tech internship by doing something I love: 7 minute read 我如何通過做自己喜歡的事情獲得一流的技術實習…

review what i studied `date` - 2017-3-31

在11 月份內&#xff0c;每天的早上6 點到12 點中&#xff0c;每隔2 小時執行一次/usr/bin/httpd.sh 怎么實現0 6-12/2 * 11 * /usr/bin/httpd.shNginx中的ip_hash是指講一個地址的請求永久分發至后端的一臺RealServer&#xff0c;直至這臺RealServer宕機Zabbix和Nagios的工作原…

java string轉long報錯_java.lang.Integer cannot be cast to java.lang.Long解決辦法

你好我是辰兮&#xff0c;本次是項目遇到的java.lang.Integer cannot be cast to java.lang.Long異常以及相對應的解決方案。文章目錄一、實戰問題用postman測試數據報錯&#xff0c;類型轉換異常&#xff01;如何將Integer類型轉換成長整形 &#xff1f;先轉成String型&#x…

pyqt 界面關閉信號_木辛老師的編程課堂之Python和Qt實戰慕課軟件開發:增加關閉按鈕...

軟件實戰開始&#xff0c;快速提供編程能力&#xff1b;通過實戰&#xff0c;分析產品需求&#xff0c;梳理設計需求&#xff0c;提升項目分析和架構的能力。快點跟著木辛老師一起學習吧&#xff01;請點擊右上角“關注”按鈕關注我們喲&#xff1a;跟著木辛老師學習Python編程…

從零開始nodejs系列文章

http://blog.fens.me/series-nodejs/轉載于:https://www.cnblogs.com/chinafbi/p/5394482.html

Leetcode589.N-ary Tree Preorder TraversalN叉樹的前序遍歷

給定一個 N 叉樹&#xff0c;返回其節點值的前序遍歷。 class Node { public:int val;vector<Node*> children;Node() {}Node(int _val, vector<Node*> _children) {val _val;children _children;} };//遞歸 class Solution { public:vector<int> res;vect…

打破雙親委派么,怎么打破_質量保證被打破。 這就是我們如何使其像其他所有東西一樣敏捷。...

打破雙親委派么,怎么打破by Derwin由Derwin 質量保證被打破。 這就是我們如何使其像其他所有東西一樣敏捷。 (Quality Assurance is broken. Here’s how we can make it as agile as everything else.) Process is the key to great software.過程是出色軟件的關鍵。 In gen…

android java.lang.linkageerror_使用eclipse中的maven構建web應用出現 java.lang.LinkageError異常...

????: Servlet.service() for servlet [jsp] in context with path [/webdemo] threw exception [java.lang.LinkageError: loader constraint violation: loader (instance of org/apache/jasper/servlet/JasperLoader) previously initiated loading for a different typ…

android 鍵盤遮蓋輸入框_Android軟鍵盤擋住輸入框的終極解決方案

前言開發做得久了&#xff0c;總免不了會遇到各種坑。而在Android開發的路上&#xff0c;『軟鍵盤擋住了輸入框』這個坑&#xff0c;可謂是一個曠日持久的巨坑——來來來&#xff0c;我們慢慢看。入門篇最基本的情況&#xff0c;如圖所示&#xff1a;在頁面底部有一個EditText&…

最全面的幾何畫板實用教程視頻免費下載

不同的選擇就會有不同的人生夜&#xff0c;這里小編為奮斗在教學一線的老師們送個大福利&#xff0c;這也是老師們充實自己的好去處。作為數學老師一枚&#xff0c;在平時的教學中應該用到很多教學輔助軟件&#xff0c;而幾何畫板就是其中一款。眾所周知&#xff0c;幾何畫板是…