← ClaudeAtlas

activitykitlisted

Build or review Live Activities and Dynamic Island experiences with ActivityKit, including lifecycle, layouts, push updates, and scheduled delivery. Use for time-sensitive Lock Screen or Dynamic Island state; route ordinary widgets to widgetkit.
thiennc-tesoglobal/ios-skills · ★ 3 · Web & Frontend · score 66
Install: claude install-skill thiennc-tesoglobal/ios-skills
# ActivityKit ActivityKit owns real-time, glanceable Live Activities displayed on the Lock Screen and Dynamic Island. Ordinary timeline widgets belong in `widgetkit`, and generic APNs setup belongs in `push-notifications`; ActivityKit owns the Live Activity lifecycle and payload contract. `aps.content-state` must decode into the exact `ActivityAttributes.ContentState` shape, including any coordinated custom date/range encoding. Modern `ActivityContent` lifecycle examples require iOS 16.2+ unless noted. See [references/activitykit-patterns.md](references/activitykit-patterns.md) for complete code patterns including push payload formats, concurrent activities, state observation, and testing. ## Contents - [Workflow](#workflow) - [ActivityAttributes Definition](#activityattributes-definition) - [Activity Lifecycle](#activity-lifecycle) - [Lock Screen Presentation](#lock-screen-presentation) - [Dynamic Island](#dynamic-island) - [Push-to-Update](#push-to-update) - [Recent Additions](#recent-additions) - [Common Mistakes](#common-mistakes) - [Review Checklist](#review-checklist) - [References](#references) ## Workflow ### 1. Create a new Live Activity 1. Verify the host app capability and `NSSupportsLiveActivities = YES`. 2. Define `ActivityAttributes.ContentState`; encode and decode a representative fixture that matches the server payload contract. 3. Create `ActivityConfiguration` and preview Lock Screen and Dynamic Island states, including stale and terminal conten