CMMotionActivityManager
全部标签 我正在尝试创建一个非常简单的计步器,并且正在关注KamilWysocki的文章https://brightinventions.pl/blog/coremotion-pedometer-swift/.但是,我的.isActivityAvailable()返回False,阻止我的任何其他函数启动。此外,我的CMMotionActivityManager.authorizationStatus()调用返回3(已拒绝)。我一辈子都弄不明白为什么会这样。我已将MotionUsageDescription添加到我的info.plist中,并在我的iPhone模拟器上启用了授权。我还尝试在调试菜单
我正在使用PrivacyPrompts项目中的以下代码来获取MotionPermission。-(void)requestMotionAccessData{self.cmManager=[[CMMotionActivityManageralloc]init];self.motionActivityQueue=[[NSOperationQueuealloc]init];[self.cmManagerstartActivityUpdatesToQueue:self.motionActivityQueuewithHandler:^(CMMotionActivity*activity){/**
我想创建一个可以接收和处理运动更新的应用,以便了解用户是静止、行走、运行还是在交通工具上。我在引用资料中看到CMMotionActivityManager对我很有用。TheCMMotionActivityManagerclassprovidesaccesstothemotiondatastoredbyadevice.Motiondatareflectswhethertheuseriswalking,running,inavehicle,orstationaryforperiodsoftime.我是应用程序开发的新手,我不知道如何使用开始更新的方法。这样做的方法是-(void)start
我正在开发一个示例应用程序来使用CMMotionActivityManager跟踪用户事件,例如运行和步行等。我用我的iPadMini测试了它,但它不工作。我写的代码如下,if([CMMotionActivityManagerisActivityAvailable]){self.activityManager=[[CMMotionActivityManageralloc]init];[self.activityManagerstartActivityUpdatesToQueue:[[NSOperationQueuealloc]init]withHandler:^(CMMotionAct
我想获取CMMotionActivityManager的授权状态。对于日历和位置等其他服务,我们在API中有一些属性可以为我们提供这些类的用户授权状态。我如何获得CMMotionActivityManager类的授权状态? 最佳答案 CMMotionActivityManager目前不提供像其他框架那样直接检查授权状态的方法。iOS-isMotionActivityEnabledinSettings>Privacy>MotionActivity但是,如上述问题中的评论所述,如果您尝试使用进行查询queryActivityStarti
我希望在应用启动后立即提示用户获得访问运动和健身数据(CoreMotion)的权限。现在我正在尝试对数据进行“虚拟”查询以提示对application:didFinishLaunchingWithOptions的许可CMMotionActivityManager*motionActivityManager=[[CMMotionActivityManageralloc]init];[motionActivityManagerstartActivityUpdatesToQueue:[NSOperationQueuemainQueue]withHandler:^(CMMotionActivi
我正在尝试找出一种方法来处理Motion事件的授权状态这是我到目前为止的想法:manager=CMMotionActivityManager()manager.queryActivityStartingFromDate(now,toDate:now,toQueue:NSOperationQueue.mainQueue(),withHandler:{(activities:[CMMotionActivity]?,error:NSError?)->Voidinif(error!=nil){if(error!.code!=Int(CMErrorMotionActivityNotAuthori
我想知道如果CMMotionActivity发生变化,系统是否可以在后台唤醒应用程序,例如,如果用户坐下后开始走路/运行,我希望能够执行一些代码并安排本地通知。有没有办法要求系统为此在后台唤醒我的应用程序?编辑:通过查看reference,这似乎是不可能的(“[...]并且在您的应用程序暂停时不会提供更新。”),但也许还有其他方法吗? 最佳答案 我解决了这个问题,创建一个后台计时器并在调用方法的选择器中检查事件类型。只需查看代码,以防它对您有用。我接受对此的建议、更正和建议。#definek_timer_time10.0f@prop
我正在使用CoreMotionFramework来检测设备事件。即步行、运行、汽车、静止主要问题是我能够非常准确地检测步行和运行,但我的设备无法检测到汽车模式。这是我的代码varmotionActivityManager:CMMotionActivityManager?ifCMMotionActivityManager.isActivityAvailable(){motionActivityManager?.startActivityUpdatesToQueue(NSOperationQueue.currentQueue()!,withHandler:{activityDatainif
我正在开发一款iPhone应用程序,可以跟踪一个人走了多少步以及他们为此投入了多少时间。使用CMStepCounter类完成计步。但是,时间戳仅随实时步骤提供,而不会随历史步骤数据一起提供。因此,为了检查步行时实际经过了多少时间,我使用了CMMotionActivityManager。我有两种方法,一种用于实时计数,一种用于在应用程序处于后台时获取历史数据。实时计数效果很好,但获取历史事件数据的方法却不行!每当应用程序进入后台时,我保存当前日期(通过NSUserDefaults),当应用程序再次进入前台时,我使用queryActivityStartingFromDate将上述日期作为开