Task Management

Manage your app’s work and how it interacts with system services like Handoff and Shortcuts.



class UndoManager

A general-purpose recorder of operations that enables undo and redo.


protocol ProgressReporting

An interface for objects that report progress using a single progress instance.

class Progress

An object that conveys ongoing progress for a given task to the user.


class Operation

An abstract class that represents the code and data associated with a single task.

class OperationQueue

A queue that regulates the execution of operations.

class BlockOperation

An operation that manages the concurrent execution of one or more blocks.


class Timer

A timer that fires after a certain time interval has elapsed, sending a specified message to a target object.

Activity Sharing

Share the user’s current activity with Handoff, Spotlight, and Siri Shortcuts.

Increasing App Usage with Suggestions Based on User Activities

Provide a continuous user experience by capturing information from your app and displaying this information as proactive suggestions across the system.

Continuing User Activities with Handoff

Define and manage which of your app’s activities can be continued between devices.

Implementing Handoff in Your App

Create, send, and receive user activities directly.

class NSUserActivity

A representation of the state of your app at a moment in time.

protocol NSUserActivityDelegate

The interface through which a user activity instance notifies its delegate of updates.

System Interaction

class ProcessInfo

A collection of information about the current process.

class NSBackgroundActivityScheduler

A task scheduler suitable for low priority operations that can run in the background.

User Notifications

class NSUserNotification

A notification that can be scheduled for display in the notification center.

class NSUserNotificationAction

An action that the user can take in response to receiving a notification.

class NSUserNotificationCenter

An object that delivers notifications from apps to the user.

protocol NSUserNotificationCenterDelegate

An interface that enables customizing the behavior of the default notification center.

See Also

App Support


Access assets and other data bundled with your app.


Design patterns for broadcasting information and for subscribing to broadcasts.

App Extension Support

Manage the interaction between an app extension and its hosting app.

Errors and Exceptions

Respond to problem situations in your interactions with APIs, and fine-tune your app for better debugging.

Scripting Support

Allow users to control your app with AppleScript and other automation technologies, or run scripts from within your app.