Let’s examine the different ways to perform background processing on iOS in more detail.
In the following sections, we will cover how to:
- Register a task to run in the background.
- Register an entire application for backgrounding privileges.
- Update an application's content from the background.
Adapting Applications to iOS 7
Backgrounding in iOS 7 is an extension of iOS 6 backgrounding concepts, supplemented with a variety of new APIs that solve many of the problems iOS 6 introduced.
In this guide, we will explore the following iOS 7 features alongside the existing backgrounding options:
- Opportunistic Background Tasks - Preserve battery life by running background tasks in opportunistic chunks when the device is awake for other processing.
- Background Transfer Service - Reliably upload and download files regardless of network status or file size.
- Background Fetch - Refresh an application from the background at system-determined intervals.
- Remote Notifications - Use push notifications to trigger content updates in the background before the user opens the application, with an option to notify the user or update silently.
- Background UI Updates - Prepare the application UI for the user, and update the application's snapshot, all from the background.
This section introduces the new iOS 7 features alongside the backgrounding options already in place, and offers guidance for supporting both versions of the OS in your application.