オルタナティブ・ブログ > 路の上で >

日頃考えていることをぽちぽち書きます。

iPhone 5sとCore Motion Framework

»

想定外に早く、この週末にiPhone 5sを入手できました。もう少し使ったら、また感想を書くつもりです。

さて、先週もちょっと触れましたが、iPhone 5sで追加されたM7 motion coprocessorを使用する手段である、Core Motion frameworkを調べてみました。iOS 7が公開され、開発用ドキュメントも公開されたので、皆さんも確認できます。

M7とiOS 7でのCore Motion frameworkのiOS 7の概要はこちら
そもそも同frameworkはiOS 4から導入されたそうで、iPhone 4でジャイロスコープが追加されたタイミング。ここでの機能は、加速度計とジャイロスコープのデータ取得。そして、iOS 5で磁力計が追加されていますが、磁力計はiPhone 3GSで追加されたはず。それまではAPIが無かったのかな?
iOS 7では、3つのクラスが追加され、うち2つのクラスで車上(automotive)、人が歩いている(walking)、人が走っている(running)、静止(stationary)と言った状態を知ることができ、残りの1つで歩数が提供されています。これら追加された情報は期間を指定してまとめて取得でき、appsが稼働していない最中も取得しているそうなので、iPhoneのSleep中はM7が処理しているのかもしれません。
また、既存のクラスも情報取得している最中にiPhoneがSleepすると、M7が代行するのかもしれません。

Appleの発表から勝手に期待してしまったのですが、あまりたいしたことはしていません。GPSも接続されていれば、もっとおもしろそうなのに。

ところで、iPhone 5sの設定 - プライバシーには「モーションアクティビティ」が追加されています。これだけでは何のことやらわかりませんが、僕が使用している歩数等を記録するARGUSをiPhone 5sで初めて起動したとき、「モーションアクティビティへのアクセスを求めています」と表示され、許可を求められました。この機能、既に公開されている英語版のマニュアルにも説明がなく、許可/不許可のメリット/デメリットが不明です。

どうももやもやとはっきりしない感じですが、ARGUSはきちんと歩数をとりながらもバッテリーの減りは少ないようなので、効果はあるようです。この程度のドキュメントでよく開発できたな...

Comment(0)