ActivityKit
Share live updates from your app as Live Activities on iPhone, iPad, Apple Watch, and the Mac.
Overview
With the ActivityKit framework, you can start a Live Activity to share live updates from your app. Live Activities offer a rich, interactive, and highly glanceable way for people to keep track of an event or activity over several hours, especially for apps that push the limit of notifications to provide updated information. For example, a sports app might start a Live Activity that makes live information available at a glance for the duration of a game.
A Live Activity appears in highly visible contexts:
On iPad and iPhone, it appears on the Lock Screen, in the Dynamic Island, and on the Home Screen.
On Apple Watch, it appears in the Smart Stack.
On Mac, it appears in the Menu bar.
In CarPlay, it appears on the Home Screen.
In addition to viewing real-time information, people perform essential functionality without launching your app using buttons or toggles included in a Live Activity layout or tap the Live Activity to launch the app to a scene that matches the activity’s content.
[Image]
In your app, use ActivityKit to configure, start, update, and end the Live Activity, and create the user interface of your Live Activities with a widget extension, WidgetKit, and SwiftUI. By using SwiftUI and WidgetKit, you can share code between widgets and Live Activities or develop them in tandem.
However, Live Activities use a different mechanism to receive updates compared to widgets. Instead of using a timeline mechanism, Live Activities receive updated data from your app with ActivityKit and from your server with ActivityKit push notifications, and you can start Live Activities with ActivityKit push notifications.
Topics
Essentials
Starting a Live Activity
Displaying live data with Live ActivitiesStarting and updating Live Activities with ActivityKit push notificationsActivityEmoji Rangers: Supporting Live Activities, interactivity, and animationsNSSupportsLiveActivitiesNSSupportsLiveActivitiesFrequentUpdates
User interface
Creating custom views for Live ActivitiesAdding accessible descriptions to widgets and Live ActivitiesLaunching your app from a Live Activity