我昨天已将我的应用程序上传到iTunes,我收到了来自苹果的邮件:
来自Apple 2. 5性能:软件要求 准则2.5.4 - 性能 - 软件要求
我们注意到您的应用在Info.plist文件的UIBackgroundModes键中声明了对位置的支持,但没有任何需要持久位置的功能。具体而言,您的应用使用位置后台模式仅用于跟踪员工,这在App Store中不合适。
后续步骤
要解决此问题,请修改您的应用,为用户提供其他功能,这些功能需要在应用处于后台时持续使用实时位置更新。
如果跟踪您的员工' location是您对背景位置的唯一预期用途,通过批量购买计划将您的应用作为自定义B2B应用分发和销售更为合适。有关批量购买计划和自定义B2B商店的更多信息,请参见iTunes Connect Developer Help。
从App Review请求电话
根据您的要求,我们可以安排Apple代表在接下来的三个工作日内给您打电话,讨论您的App Review问题。
要接听电话并确保我们拥有准确的联系信息,请直接回复此邮件,并提供联系人姓名和直接电话号码以便与您联系。
但在我的应用程序中必须在后台获取位置。现在我应该怎么做才能在笔记或其他任何内容中回复它们?
答案 0 :(得分:0)
Apple对其后台模式使用政策非常严格。如果您的应用恰好使用了可用的任何后台模式,那么最好确保该应用通过选择后台模式将值添加到用户。
<强> 1。使用位置更改的应用程序执行一些后台操作(不向用户添加任何直接值)
如果您的应用仅使用用户位置更改执行某项后台任务(例如将数据上传到服务器或尝试让您的应用与服务器同步),则必须确保仅选择SignificantLocationChanges
。
确保您的位置管理员使用
观察重要的位置变化[locationManager startMonitoringSignificantLocationChanges];
而不是使用[locationManager startUpdatingLocation];
使用startUpdatingLocation将导致您的应用程序持续监控用户位置更改并导致电池耗尽。无论如何苹果都不赞赏,因为你的应用没有直接使用位置数据。
2.App使用位置更改并为用户添加值(如地图应用)
如果您的应用需要持续监控用户位置,并且您的应用使用用户位置实际为用户增加价值,例如跟踪用户并在地图或其他类似地方显示,您可以使用[locationManager startUpdatingLocation];
< / p>
但是因为startUpdatingLocation会使您的应用监控位置不断变化,请确保正确设置distanceFilter
和desiredAccuracy
,并且不会不必要地利用位置后台模式。
<强>最后:强>
请务必在您的info.plist中添加Privacy - Location Always Usage Description
密钥,并提供详细的文字说明用户您的应用为何使用其位置信息。
返回itunesConnect帐户,详细说明为什么您的应用使用了位置后台模式以及它如何为用户增加价值,并提供了查看其在应用中的反映方式的步骤。
希望它有所帮助。