ユーザーが静止しているか、歩いているか、走っているか、または交通機関に乗っているかを理解するために、モーションの更新を受信して処理できるアプリを作成したいと考えています。CMMotionActivityManager が役立つ可能性があることをリファレンスで見ました。
CMMotionActivityManager クラスは、デバイスによって保存されたモーション データへのアクセスを提供します。モーション データには、ユーザーが一定時間歩いているか、走っているか、車に乗っているか、静止しているかが反映されます。
アプリ開発は初めてで、更新を開始する方法がわかりません。これを行う方法は- (void)startActivityUpdatesToQueue:(NSOperationQueue *)queue withHandler:(CMMotionActivityHandler)handler
. 参照に次のように書かれているため、ハンドラーに何を書くべきかわかりません。
handler 現在のモーション タイプの変更が検出されたときに実行するブロック。このブロックのパラメーターについては、CMMotionActivityHandler を参照してください。このプロパティは nil であってはなりません。
私の実装は次のとおりです。
- (IBAction)startButtonPressed:(id)sender {
_motionActivityManager = [[CMMotionActivityManager alloc] init];
[_motionActivityManager startActivityUpdatesToQueue:NSOperationQueueDefaultMaxConcurrentOperationCount withHandler:CMMotionActivityHandler];
}
既に CoreMotion フレームワークをインポートしましたが、XCode が を認識しませんCMMotionActivityHandler
。どこが間違っているのでしょうか? この問題を解決するにはどうすればよいですか?
ありがとう