Ios8 苹果拒绝使用UIApplication禁用屏幕锁定的应用程序是正常的吗?

Ios8 苹果拒绝使用UIApplication禁用屏幕锁定的应用程序是正常的吗?,ios8,uiapplication,Ios8,Uiapplication,我刚刚拒绝了一个应用程序,因为我有一个用户可更改的设置,允许用户通过 [UIApplication sharedApplication].idleTimerDisabled = YES; 苹果说我使用了一个未记录的API,但这里确实有记录: 我的应用程序会绘制气压图表,如果你想让图表运行超过一两分钟,禁用屏幕锁定是很重要的。默认的行为是像往常一样屏幕锁定,但设置中有一个选项可以禁用屏幕锁定,这似乎是苹果的问题所在。我已经有学术用户请求此功能,并且我已经成功地在其他应用程序中使用了它,但这次苹果

我刚刚拒绝了一个应用程序,因为我有一个用户可更改的设置,允许用户通过

[UIApplication sharedApplication].idleTimerDisabled = YES;
苹果说我使用了一个未记录的API,但这里确实有记录:


我的应用程序会绘制气压图表,如果你想让图表运行超过一两分钟,禁用屏幕锁定是很重要的。默认的行为是像往常一样屏幕锁定,但设置中有一个选项可以禁用屏幕锁定,这似乎是苹果的问题所在。我已经有学术用户请求此功能,并且我已经成功地在其他应用程序中使用了它,但这次苹果拒绝了我的应用程序。这正常吗?现在真的允许通过UIApplication禁用屏幕锁定吗?

我不确定,但我认为问题在于您共享的文档的重要标题下的注释

“您应仅在必要时设置此属性,并且应确保 当不再需要时,将其重置为“否”。大多数应用应允许 当空闲计时器过期时,系统将关闭屏幕…”


你应该写信到解决中心并确认这一点

在更新蓝牙设备上的固件时,我们使用该功能来防止空闲睡眠。完成更新后,我们立即恢复空闲超时。苹果从来没有对我们说过一句话

但是,在您的情况下,没有技术理由禁用空闲计时器。您的数据收集不会因为系统闲置而失败。不会有不良或异常的客户体验。这可能正是苹果所反对的

存在三种可能的途径:

1) 当系统空闲时,每隔一段时间在后台收集数据,当应用程序再次出现在前台时,更新图表

2) 将消息添加到应用程序中,告知用户如果想要连续显示,他们需要更改系统设置中的空闲超时时间。(附带有关对蓄电池充电持续时间的影响的警告。)

3) 向苹果公司陈述你的情况


我会选择1和2,除非ios8中有什么改变,否则1和2似乎是做你想做的事情的基本标准。可能是一个糟糕的审阅者,或者他们在错误报告中错误地链接到了代码的错误部分?我回答审阅者说API确实有文档记录,显示了文档记录的位置,并告诉他们我为什么要使用它。我希望不需要几周的时间才能收到他们的回复,也不知道对拒绝的回复会有什么结果(这是我第一次拒绝)。有时用户(比如气象学家)可能希望在应用程序绘图时屏幕保持打开状态。例如在飓风期间。本周末在日本台风期间,有很多用户在运行我的应用程序,他们要求提供此功能。我在其他应用程序中使用过它,没有任何问题,所以我不明白为什么这是一个问题,也不明白为什么苹果会将他们的API称为未文档化或私有。我想我可以将UISwitch更改为一个按钮,当你点击它时,它只会显示一个警报,并告诉用户去设置,自己去做,但这看起来很不像苹果。我可以理解为什么用户只在查看实时压力数据时才不想更改系统范围内的屏幕锁定设置。好吧,苹果在“未记录或私人”声明方面显然是错误的。苹果式的行为是在所有可能的情况下保存电池。此外,如果苹果提供了足够的控制,并且苹果开始定义“足够”,则应避免在应用程序中执行系统操作_(ツ)_/''我同意苹果公司对未经证明的或私人的声明是错误的。有趣的是,这是我的应用程序后来以相同的功能被接受,可能是由另一位严格遵守规则的审核人接受的。我写了解决中心,他们的回答是:为了使你的应用程序符合指南,这将是适当的te将从你的应用程序中删除此功能。请在方便的情况下尽早进行必要的更改并上载新的二进制文件以供审阅。问候,app Store review