iPhoneを傾ければ傾きがわかり、移動を始めれば移動中であることがわかる……内蔵のセンサーを読み取り識別していることはよく知られているが、そのようなアプリを制作するには「Core Motion」というフレームワークが必要なことは、開発者以外あまり知られていない。

そのCore Motionフレームワークは、iOS 4のとき登場した。加速度センサーやジャイロスコープといったモーションセンサによる情報は、このフレームワークを利用して取り出すのだ。iOSデバイスの状態を検知するアプリが多数あるのは、Core Motionあっての話ともいえる。

iPhone 5sのリリースにあわせ、Core Motionにも機能が追加された。それは、新搭載のコプロセッサ「M7」に対応する機能だ。静止中か運動中か、歩行中か走行中かといった活動データはM7の働きにより自動保存されており、Core Motionを利用すればそのデータを取り出せる。直近7日間のデータが保存されているので、データを取り出す時点で(Core Motion対応の)アプリを起動していなくてもいいところがポイントだ。

Core Motionが保有するM7のデータは、状態(Stationary:静止状態、Walking:歩行中、Running:走行中、Automobile:自動車などで高速走行中、Unknown:不明)、データの信頼度(Low/Medium/High)、歩数と活動開始時刻だ。それらを取得して解析すれば、何時から何時までどれほど歩いたか、なにをしていたかを推測できる。歩数計のような基礎運動量を測定するアプリにはもってこいの機能ということがわかるだろう・

ただし、M7のデータをそのまま表示するアプリはiOS 7に収録されていない。サードパーティーアプリを使い、加工された情報を見るしかないのが現状だ。「素」のM7のデータを表示するアプリは見当たらないが、ほぼリアルタイムにM7のデータを表示する「M7 Debug」というアプリが動作の参考になるだろう。

操作手順をカンタン解説

iPhone 5sに搭載のコプロセッサ「M7」は、直近7日間の活動データを自動記録している(画面は「M7 Debug)

(提供:iPad iPhone Wire)