【发布时间】:2014-11-19 21:31:22
【问题描述】:
原因
2.16:多任务应用程序只能将后台服务用于其预期目的:VoIP、音频播放、定位、任务完成、本地通知等。 17.5:包含账户注册或访问用户现有账户的应用程序必须包含隐私政策,否则将被拒绝 ----- 2.16 -----
我们发现您的应用使用后台模式,但不包含需要该模式持续运行的功能。此行为不符合 App Store 审核指南。
我们注意到您的应用在 Info.plist 的 UIBackgroundModes 键中声明支持位置,但不包含需要持久位置的功能。具体来说,它是适当的 修改您的应用以使用发生重大变化的位置服务来实现您所描述的功能。
由于您的应用程序不需要持久的实时位置更新,我们建议使用重大变化位置服务或区域监控位置服务。
有关这些选项的更多信息,请参阅位置感知编程指南中的“启动重大变化位置服务”和“监控基于形状的区域”部分。
如果您选择添加使用位置后台模式的功能,请在您的应用说明中包含以下电池使用免责声明:
“继续使用在后台运行的 GPS 会大大缩短电池寿命。”
-- 17.5 -----
我们还注意到,您的应用包括帐户注册或对用户现有帐户的访问,但不包含隐私政策,这不符合 App Store 审核指南。
请更新您的应用元数据以包含隐私政策,并确保您提供的隐私政策 URL 将用户定向到预期目的地。
如果您的 iTunes Connect 应用程序状态被拒绝,则需要一个新的二进制文件。上传新的二进制文件时进行所需的元数据更改。
注意:请确保通过选择每个特定的本地化并进行适当的更改来对所有应用本地化进行任何元数据更改。
对于离散代码级别的问题,您可能希望咨询 Apple 开发者技术支持。当 DTS 工程师跟进您时,请准备好提供:
1。在 2.16 中重新提交应用到商店之前我需要做什么?
2。目前我已经在其中包含了隐私政策,即使他们拒绝了,有什么线索吗?
【问题讨论】:
-
对于 1) 只需从 info.plist 中删除
UIBackgroundModes,就像他们说的简单。 -
在位置更新的情况下,我可以使用此代码获取位置,还是需要使用重要的位置更新来获取用户位置? locationManager.delegate = self; locationManager.desiredAccuracy = kCLLocationAccuracyKilometer; locationManager.distanceFilter = 10; // 米 [locationManager startUpdatingLocation];
-
现阶段我对您的应用程序了解得不够多,无法就编码问题提供任何形式的答案/评论。我根据苹果告诉您的操作提供了评论。他们说您没有任何需要使用
UIBackgroundModes的功能,并且您还没有提供隐私政策网址。 -
@shine:你有没有提到“在后台继续使用 GPS 会显着降低电池寿命。”在您的应用程序描述中。
-
@Deepak:是的,我做到了
标签: ios objective-c iphone app-store app-store-connect