SlideShare a Scribd company logo
1 of 11
Download to read offline
CMPedometerで歩数計を
作ってみよう
株式会社デコレーションカンパニー
徳弘佑衣
自己紹介
• 株式会社デコレーションカンパニー代表
• ここCoEdoのスタッフです
• オリジナルのiPhoneケースが作れるアプリ
「DesigningCase」運営
• iOS開発歴4年
• Swiftは苦手です
アプリ紹介(ぼくの歩数計)
実際の動きを見てください( ✧Д✧)
今日やること
このアプリの中心になっている「歩数
計」の機能をCMPedometerを使って
簡単に実装してみよう
CMPedometerとは?
iOS 8 のCoreMotionに追加された歩数
関連のデータを取得することができる
API !
歩数/走行距離などを計測できたり、過去
に遡ってデータを参照できたりします。
注意:M7/M8(iPhone5s以降のデバイス)
でしか使えない)
M7/M8とは?
M7:iPhone5sから搭載されたチップ!
加速度センサ、ジャイロセンサ、磁気セ
ンサの処理をまとめて行うことで省電力
でこれらのデータを使用することができ
る
M8:iPhone6/6plusに搭載されてるチッ
プ!M7の機能に加え気圧計が追加され
た
❶CoreMotionを追加
フレームワークの追加方法
❷import & 変数作成
import UIKit
import CoreMotion
class ViewController: UIViewController {
//表示するラベル
@IBOutlet weak var label: UILabel!
//CMPedometerの変数を作成
let pedometer = CMPedometer()
❸測定する処理
//カウント用メソッド
func startStepCounting() {
// CMPedometerが利用できるか確認
if CMPedometer.isStepCountingAvailable() {
// 計測開始
pedometer.startPedometerUpdatesFromDate(NSDate(),     
         withHandler: {data, error in          
         dispatch_async(dispatch_get_main_queue(), {
// 歩数
let steps = data.numberOfSteps
// 結果をラベルに出力
self.label.text = "Steps: (steps)"
})
})
}
}
解説
startPedometerUpdatesFromDate:
このメソッドによってリアルタイム計測を行いま
す。
第1引数:NSDate型→どの時点からデータを取得す
るかを指定可能
第2引数:handlerでは
計測データ(pedometerData *pedometerData)
エラー内容(NSError *error)
このhandlerは新しいデータが追加されるとバック
グラウンドスレッドで繰り返し呼ばれるようになっ
ています。
今日のコード
https://github.com/TokuhiroYui/
CountWalk
参考URL:
(1)http://blog.tsumikiinc.com/article/20141111_ios8-cmpedometer.html
(2)http://dev.classmethod.jp/references/ios8-cmpedometer/
ありがとうございました ( ✧Д✧)

More Related Content

Viewers also liked

Swift 2.0 で変わったところ「後編」 #cswift
Swift 2.0 で変わったところ「後編」 #cswiftSwift 2.0 で変わったところ「後編」 #cswift
Swift 2.0 で変わったところ「後編」 #cswiftTomohiro Kumagai
 
SwiftでSioriを開発した体験記
SwiftでSioriを開発した体験記SwiftでSioriを開発した体験記
SwiftでSioriを開発した体験記yohei sugigami
 
Xcode 6の新機能
Xcode 6の新機能Xcode 6の新機能
Xcode 6の新機能Shingo Sato
 
ようこそ! Swift Playgroundsへ
ようこそ! Swift Playgroundsへようこそ! Swift Playgroundsへ
ようこそ! Swift PlaygroundsへKinkumaDesign
 
iOS 8/Swift エンジニア勉強会@ヤフー
iOS 8/Swift エンジニア勉強会@ヤフーiOS 8/Swift エンジニア勉強会@ヤフー
iOS 8/Swift エンジニア勉強会@ヤフー大介 束田
 
虚数は作れる!Swift で学ぶ複素数
虚数は作れる!Swift で学ぶ複素数虚数は作れる!Swift で学ぶ複素数
虚数は作れる!Swift で学ぶ複素数Taketo Sano
 
ほんわかSwift勉強資料
ほんわかSwift勉強資料ほんわかSwift勉強資料
ほんわかSwift勉強資料kouhei kawamata
 
iOS 8 Widget ~ 導入から Tips まで
iOS 8 Widget ~ 導入から Tips までiOS 8 Widget ~ 導入から Tips まで
iOS 8 Widget ~ 導入から Tips までYuki Tanabe
 
Swift 2.0 で変わったところ「前編」 #cswift
Swift 2.0 で変わったところ「前編」 #cswiftSwift 2.0 で変わったところ「前編」 #cswift
Swift 2.0 で変わったところ「前編」 #cswiftTomohiro Kumagai
 

Viewers also liked (13)

HOME'Sアプリ Swift化
HOME'Sアプリ Swift化HOME'Sアプリ Swift化
HOME'Sアプリ Swift化
 
Swift 2.0 で変わったところ「後編」 #cswift
Swift 2.0 で変わったところ「後編」 #cswiftSwift 2.0 で変わったところ「後編」 #cswift
Swift 2.0 で変わったところ「後編」 #cswift
 
SwiftでSioriを開発した体験記
SwiftでSioriを開発した体験記SwiftでSioriを開発した体験記
SwiftでSioriを開発した体験記
 
Xcode 6の新機能
Xcode 6の新機能Xcode 6の新機能
Xcode 6の新機能
 
iOS豆知識ver0.0.5
iOS豆知識ver0.0.5iOS豆知識ver0.0.5
iOS豆知識ver0.0.5
 
ようこそ! Swift Playgroundsへ
ようこそ! Swift Playgroundsへようこそ! Swift Playgroundsへ
ようこそ! Swift Playgroundsへ
 
iOS 8/Swift エンジニア勉強会@ヤフー
iOS 8/Swift エンジニア勉強会@ヤフーiOS 8/Swift エンジニア勉強会@ヤフー
iOS 8/Swift エンジニア勉強会@ヤフー
 
虚数は作れる!Swift で学ぶ複素数
虚数は作れる!Swift で学ぶ複素数虚数は作れる!Swift で学ぶ複素数
虚数は作れる!Swift で学ぶ複素数
 
Swift勉強会
Swift勉強会Swift勉強会
Swift勉強会
 
ほんわかSwift勉強資料
ほんわかSwift勉強資料ほんわかSwift勉強資料
ほんわかSwift勉強資料
 
iOS 8 Widget ~ 導入から Tips まで
iOS 8 Widget ~ 導入から Tips までiOS 8 Widget ~ 導入から Tips まで
iOS 8 Widget ~ 導入から Tips まで
 
既存アプリのiOS8対応 #ios8yahoo
既存アプリのiOS8対応 #ios8yahoo既存アプリのiOS8対応 #ios8yahoo
既存アプリのiOS8対応 #ios8yahoo
 
Swift 2.0 で変わったところ「前編」 #cswift
Swift 2.0 で変わったところ「前編」 #cswiftSwift 2.0 で変わったところ「前編」 #cswift
Swift 2.0 で変わったところ「前編」 #cswift
 

Similar to CMPedometerで歩数計を 作ってみよう

はじめてのi osアプリデザイン
はじめてのi osアプリデザインはじめてのi osアプリデザイン
はじめてのi osアプリデザインschoowebcampus
 
Metroアプリの作り方 (COD2012)
Metroアプリの作り方 (COD2012)Metroアプリの作り方 (COD2012)
Metroアプリの作り方 (COD2012)Yasuhiko Yamamoto
 
2011年5月28日 Android勉強会プレゼン資料
2011年5月28日 Android勉強会プレゼン資料2011年5月28日 Android勉強会プレゼン資料
2011年5月28日 Android勉強会プレゼン資料Eiichi Yoshikawa
 
CEDEC2021 Android iOS 実機上での自動テストをより楽に有意義にする為に ~端末管理・イメージ転送・動画記録等の周辺情報のノウハウ共有~
CEDEC2021 Android iOS 実機上での自動テストをより楽に有意義にする為に ~端末管理・イメージ転送・動画記録等の周辺情報のノウハウ共有~CEDEC2021 Android iOS 実機上での自動テストをより楽に有意義にする為に ~端末管理・イメージ転送・動画記録等の周辺情報のノウハウ共有~
CEDEC2021 Android iOS 実機上での自動テストをより楽に有意義にする為に ~端末管理・イメージ転送・動画記録等の周辺情報のノウハウ共有~SEGADevTech
 
これからのNotesモバイルアプリはこう作れ
これからのNotesモバイルアプリはこう作れこれからのNotesモバイルアプリはこう作れ
これからのNotesモバイルアプリはこう作れMitsuru Katoh
 
RICOH様全天球カメラTHETAとエプソンスマートグラスMOVERIO連携について
RICOH様全天球カメラTHETAとエプソンスマートグラスMOVERIO連携についてRICOH様全天球カメラTHETAとエプソンスマートグラスMOVERIO連携について
RICOH様全天球カメラTHETAとエプソンスマートグラスMOVERIO連携についてDevice WebAPI Consortium
 
今から始めよう!WordPressで作る女子ウケ★スマホサイト
今から始めよう!WordPressで作る女子ウケ★スマホサイト今から始めよう!WordPressで作る女子ウケ★スマホサイト
今から始めよう!WordPressで作る女子ウケ★スマホサイトrie05
 
2015年をRTBのアプリ広告元年とするために
2015年をRTBのアプリ広告元年とするために2015年をRTBのアプリ広告元年とするために
2015年をRTBのアプリ広告元年とするためにToshiaki Ishibashi
 
androidのgpsアプリってどうよ|株式会社コンテンツワン
androidのgpsアプリってどうよ|株式会社コンテンツワンandroidのgpsアプリってどうよ|株式会社コンテンツワン
androidのgpsアプリってどうよ|株式会社コンテンツワンKatsuaki Sato
 
Cod2012 デバッグ講座
Cod2012 デバッグ講座Cod2012 デバッグ講座
Cod2012 デバッグ講座Masuda Tomoaki
 
Notes Dominoアプリのモバイル化戦略
Notes Dominoアプリのモバイル化戦略Notes Dominoアプリのモバイル化戦略
Notes Dominoアプリのモバイル化戦略Mitsuru Katoh
 
iPhoneコンシェルジュアプリ
iPhoneコンシェルジュアプリiPhoneコンシェルジュアプリ
iPhoneコンシェルジュアプリKato Shingo
 
iPhoneコンシェルジェアプリの紹介
iPhoneコンシェルジェアプリの紹介iPhoneコンシェルジェアプリの紹介
iPhoneコンシェルジェアプリの紹介Kato Shingo
 
iMessage+APP LINEスタンプっぽい Stickersの紹介
iMessage+APP LINEスタンプっぽい Stickersの紹介iMessage+APP LINEスタンプっぽい Stickersの紹介
iMessage+APP LINEスタンプっぽい Stickersの紹介FromF
 
一歩先行くNotes dominoモバイルアプリ戦略
一歩先行くNotes dominoモバイルアプリ戦略一歩先行くNotes dominoモバイルアプリ戦略
一歩先行くNotes dominoモバイルアプリ戦略Mitsuru Katoh
 
20120413 nestakabaneworkshop
20120413 nestakabaneworkshop20120413 nestakabaneworkshop
20120413 nestakabaneworkshopYoichiro Sakurai
 
Leapmotionとp5.js:DEMOと解説
Leapmotionとp5.js:DEMOと解説Leapmotionとp5.js:DEMOと解説
Leapmotionとp5.js:DEMOと解説光吉 浜谷
 

Similar to CMPedometerで歩数計を 作ってみよう (20)

はじめてのi osアプリデザイン
はじめてのi osアプリデザインはじめてのi osアプリデザイン
はじめてのi osアプリデザイン
 
Metroアプリの作り方 (COD2012)
Metroアプリの作り方 (COD2012)Metroアプリの作り方 (COD2012)
Metroアプリの作り方 (COD2012)
 
3分でわかるMobileApps
3分でわかるMobileApps3分でわかるMobileApps
3分でわかるMobileApps
 
2011年5月28日 Android勉強会プレゼン資料
2011年5月28日 Android勉強会プレゼン資料2011年5月28日 Android勉強会プレゼン資料
2011年5月28日 Android勉強会プレゼン資料
 
CEDEC2021 Android iOS 実機上での自動テストをより楽に有意義にする為に ~端末管理・イメージ転送・動画記録等の周辺情報のノウハウ共有~
CEDEC2021 Android iOS 実機上での自動テストをより楽に有意義にする為に ~端末管理・イメージ転送・動画記録等の周辺情報のノウハウ共有~CEDEC2021 Android iOS 実機上での自動テストをより楽に有意義にする為に ~端末管理・イメージ転送・動画記録等の周辺情報のノウハウ共有~
CEDEC2021 Android iOS 実機上での自動テストをより楽に有意義にする為に ~端末管理・イメージ転送・動画記録等の周辺情報のノウハウ共有~
 
これからのNotesモバイルアプリはこう作れ
これからのNotesモバイルアプリはこう作れこれからのNotesモバイルアプリはこう作れ
これからのNotesモバイルアプリはこう作れ
 
RICOH様全天球カメラTHETAとエプソンスマートグラスMOVERIO連携について
RICOH様全天球カメラTHETAとエプソンスマートグラスMOVERIO連携についてRICOH様全天球カメラTHETAとエプソンスマートグラスMOVERIO連携について
RICOH様全天球カメラTHETAとエプソンスマートグラスMOVERIO連携について
 
今から始めよう!WordPressで作る女子ウケ★スマホサイト
今から始めよう!WordPressで作る女子ウケ★スマホサイト今から始めよう!WordPressで作る女子ウケ★スマホサイト
今から始めよう!WordPressで作る女子ウケ★スマホサイト
 
2015年をRTBのアプリ広告元年とするために
2015年をRTBのアプリ広告元年とするために2015年をRTBのアプリ広告元年とするために
2015年をRTBのアプリ広告元年とするために
 
androidのgpsアプリってどうよ|株式会社コンテンツワン
androidのgpsアプリってどうよ|株式会社コンテンツワンandroidのgpsアプリってどうよ|株式会社コンテンツワン
androidのgpsアプリってどうよ|株式会社コンテンツワン
 
Cod2012 デバッグ講座
Cod2012 デバッグ講座Cod2012 デバッグ講座
Cod2012 デバッグ講座
 
Notes Dominoアプリのモバイル化戦略
Notes Dominoアプリのモバイル化戦略Notes Dominoアプリのモバイル化戦略
Notes Dominoアプリのモバイル化戦略
 
iPhoneコンシェルジュアプリ
iPhoneコンシェルジュアプリiPhoneコンシェルジュアプリ
iPhoneコンシェルジュアプリ
 
iPhoneコンシェルジェアプリの紹介
iPhoneコンシェルジェアプリの紹介iPhoneコンシェルジェアプリの紹介
iPhoneコンシェルジェアプリの紹介
 
iMessage+APP LINEスタンプっぽい Stickersの紹介
iMessage+APP LINEスタンプっぽい Stickersの紹介iMessage+APP LINEスタンプっぽい Stickersの紹介
iMessage+APP LINEスタンプっぽい Stickersの紹介
 
一歩先行くNotes dominoモバイルアプリ戦略
一歩先行くNotes dominoモバイルアプリ戦略一歩先行くNotes dominoモバイルアプリ戦略
一歩先行くNotes dominoモバイルアプリ戦略
 
20110824 android apps_endo
20110824 android apps_endo20110824 android apps_endo
20110824 android apps_endo
 
20120413 nestakabaneworkshop
20120413 nestakabaneworkshop20120413 nestakabaneworkshop
20120413 nestakabaneworkshop
 
20110824 android apps_endo
20110824 android apps_endo20110824 android apps_endo
20110824 android apps_endo
 
Leapmotionとp5.js:DEMOと解説
Leapmotionとp5.js:DEMOと解説Leapmotionとp5.js:DEMOと解説
Leapmotionとp5.js:DEMOと解説
 

CMPedometerで歩数計を 作ってみよう