ios app控制它的背景状态

时间:2015-03-03 09:31:47

标签: ios objective-c iphone background-service

在开发过程中出现以下情况:为了完全实现应用程序的功能,它需要在后台模式下运行。我知道«背景模式»,但在我的情况下,这些选项都不适合我。我需要以下内容:

  1. 在我自己设定的时间(开始时间可能不同),iOS需要运行我的应用程序(不得干扰用户对设备的工作)。无论设备是否被锁定,都应该发生这种情况。
  2. 启动我的应用程序后,需要尽可能多的时间,不限于间隔时间(通常文档最大值为30秒)。
  3. 在此类工作期间,应用程序必须能够访问用户允许的所有功能(地理定位服务,本地推送通知,日历,访问互联网)。
  4. 如果iOS未及时启动我的应用程序,请通知用户(从技术上讲,可以通过计划的本地推送通知实现)。
  5. Offtopic:

    我想知道为什么Apple无法利用iOS的标准设置机制编写我们自己的后台服务。例如,如果我的应用程序想要使用地理定位服务或麦克风,系统要求(如果它不自己这样做)我作为程序员要求用户使用此服务的许可。用户可以稍后通过“系统偏好设置”改变他/她的想法并访问远离我的应用程序的某些功能/服务。为什么他们不能为必须在后台运行的应用程序做出这个决定,而不是以“背景模式”的形式产生“黑客”。