我想创建一个可以接收和处理运动更新的应用程序,以了解用户是静止的、步行的、跑步的还是在交通工具上。我在参考资料中看到 CMMotionActivityManager 对我有用。
CMMotionActivityManager 类提供对设备存储的运动数据的访问。运动数据反映用户是在步行、跑步、在车辆中还是静止一段时间。
我是应用程序开发的新手,我不明白如何使用开始更新的方法。这样做的方法是- (void)startActivityUpdatesToQueue:(NSOperationQueue *)queue withHandler:(CMMotionActivityHandler)handler
。我不明白我应该在处理程序上写什么,因为参考资料说:
handler 检测到当前运动类型发生变化时执行的块。有关此块的参数的信息,请参阅 CMMotionActivityHandler。该属性不能为零。
我的实现是:
- (IBAction)startButtonPressed:(id)sender {
_motionActivityManager = [[CMMotionActivityManager alloc] init];
[_motionActivityManager startActivityUpdatesToQueue:NSOperationQueueDefaultMaxConcurrentOperationCount withHandler:CMMotionActivityHandler];
}
我已经导入了 CoreMotion 框架但是 XCode 不识别CMMotionActivityHandler
,我哪里错了?我该如何解决这个问题?
谢谢