7

当应用程序在后台运行时,Core Motion 框架可以工作吗?

4

4 回答 4

1

Core Motion 框架允许访问 CMPedometer 数据的历史数据,因此如果您的应用仅使用它,则无需在后台运行。

上周我一直在玩 CM,在我的测试中,如果您在将应用程序发送到后台时正在运行活动查询,则查询处理程序会在返回时收到大量事件(在应用程序暂停时发生)前景。我不知道将缓存多少事件,并且我在文档中没有看到任何关于此的内容。

这种行为似乎就足够了。我想不出 Core Motion 的用例,您需要持续的后台访问,历史 CMPedometer 数据不够用,并且符合 App Store 指南。

于 2016-07-07T12:48:37.300 回答
0

取决于您对工作的定义... Core Animation 是否需要继续运行,或者您是否希望视图被冻结?当应用程序在后台运行时,仅允许运行某些进程。(例如通知)。

在大多数情况下,应用程序 UI 会暂停,直到您触发applicationDidBecomeActive。一旦再次启动,它应该会恢复,但不会继续在后台运行。对于在 iOS 上运行 OpenGL 的大多数游戏来说也是如此,它会暂停,直到应用程序再次处于活动状态。

于 2013-02-08T15:32:55.667 回答
0

为了让您的应用程序在后台运行,您必须将其声明为后台任务。问题是只有几个UIBackgroundModes ......而运动不是其中之一。

一种解决方法可能是启用 UIBackgroundMode location,它旨在让用户知道他们的位置,即使应用程序在后台。然后,您可以将运动逻辑包装在其中。然而,这样做的明显缺点是它涉及使用 GPS,这会显着耗尽电池......

于 2014-01-17T21:09:39.453 回答
0

one of the apps- moves that is used to track your walking steps is quite amazing, because even you make it into background or killed, it can indicate the steps you walked. So some internal mechanism of gyroscope and GPS and other sensors can carry on when the apps are killed.

于 2013-06-05T09:51:55.857 回答