1

during the development appeared the following situation: for the full implementation of the application's functional it required its operation in the background mode. I know about «Background Modes», but in my case none of these options doesn't suit me. I need the following:

  1. At the time set by myself (start time may vary), iOS needs to run my application (the user's work with the device mustn't be interfered). This should occur regardless of whether the device is locked or not.
  2. After starting my application have as much time as it needs, not limited to the interval (often documentation maximum is 30 seconds).
  3. During such work the application must have access to all the features that the user allowed (geolocation service, local push-notifications, calendar, access to the internet).
  4. In case iOS didn't launch my application in due time, notify the user (technically, it is possible to realize through a scheduled local push-notification).

Offtopic:

I wonder why Apple can't make the opportunity to write our own background services, using them with the standard settings mechanism for iOS. For example, if my application wants to use the geolocation service, or the microphone, the system oblige (if it doesn't do this by itself) me as a programmer to ask the user for permission to use this service. The user can later change his/her mind and take access to certain functions / services away from my application through System Preferences. Why can't they make this decision for applications that must be run in the background, and not to produce "hacks" in the form of «Background Modes».

WaNgeL
  • 198
  • 1
  • 12