在后台模式下应用时,如何从板载硬件接收与加速度相关的数据?

时间:2013-05-20 11:02:03

标签: iphone ios objective-c accelerometer

开发用于计算用户移动步数的应用程序并在地图中绘制用户活动的应用程序。我们正在使用UIAccelerometer委托来接收来自板载硬件的加速相关数据。因此,当应用程序处于后台模式时,我还需要接收与加速度相关的数据。上次我的一个应用程序因为在后台使用位置服务而被拒绝,Apple建议我“如果你的应用真正需要这些信息来为用户提供价值,你只能使用这种后台模式”。请为此应用建议最佳方法。

2 个答案:

答案 0 :(得分:0)

这很容易做到。

当您的应用程序未处于前台状态时,该iOS会使您的应用程序处于暂停状态。

您只需注册您的应用程序以执行后台操作。

参考: http://dcraziee.wordpress.com/2013/05/20/background_ios/

另请参阅: iOS background application network access  关于使用位置服务的苹果政策。其中声明您可以在后台使用位置服务。

答案 1 :(得分:0)

您无法在后台运行加速度计。 您可以在后台跟踪用户的位置...但是,如果您只是跟踪它并且不对该信息执行任何操作。苹果将拒绝它并告诉您在应用程序到达前台时获取lates位置。 您可以尝试的是...定期更新覆盖总距离的用户(如跑步者),这样可以证明在后台跟踪位置是合理的。

但首先,您可以尝试向审核委员会提出申诉,说明您需要在后台跟踪位置,因为您会显示应用进入foregraound时用户所行的整个路线。并将其与运行管理员等现有应用进行比较,如果您幸运,苹果可能会批准您的应用程序而无需任何更改...