苹果拒绝,因为UIBackgroundMode=位置



我提交了一个应用程序,它可以按照用户选择的固定时间间隔(5分钟、10分钟、30分钟、1小时)跟踪用户的位置(并将其发送到服务器)。该应用程序也应该在后台工作(发送请求),我已经将其声明为UIBackgroundMode = location。我可以在后台以固定的时间间隔发送请求。苹果拒绝了它,建议如下:

我们发现您的应用程序使用后台模式,但不包括需要该模式持续运行的功能。这行为不符合App Store审查指南。

我们注意到您的应用程序在UIBackgroundModes键在Info.plist中,但不包括功能需要持久定位。

添加需要持续使用的功能是合适的应用程序处于后台时实时位置更新从UIBackgroundModes键中删除"location"设置。如果您应用程序不需要持久的实时位置更新,我们建议使用显著更改位置服务或区域监控定位服务。

有关这些选项的更多信息,请参阅"启动重大变化定位服务"one_answers"基于形状的监控区域"部分。

如果选择添加使用位置背景模式的功能,请在您的应用说明:

"继续使用GPS在后台运行可以显著降低电池寿命。">

如果我更改了显著的位置更改并从Info.plist中删除了UIBackgroundMode密钥,则应用程序将在后台终止,并且只有在事件发生时才会唤醒。但我必须每5分钟向服务器发送一次请求,例如,我的应用程序在后台被杀死(假设用户不移动,事件不是trigger = no请求发送到服务器)。

要解决此问题,您必须在Itunes Connect的应用程序描述中添加免责声明"继续使用在后台运行的GPS会大大缩短电池寿命。">

听起来苹果的抱怨是你的苹果认为你的应用程序不需要使用后台位置。如果你试图做的是合法的——例如,你的用户希望应用程序在后台跟踪他们,这对他们来说是一件有用的事情——你可以试着在评论笔记中解释为什么需要位置跟踪。

我认为最好直接向苹果公司解决这些问题。我希望你这么做了。他们非常善于沟通,只要你的反应专业而清晰。你的问题也是如此。

我很难相信有人能在这里帮助你。

编辑:将描述添加到您的应用程序中。在给用户和苹果评论者的信息中要清楚。这似乎帮助很大。记住,他们也是人。

最新更新