What problem does it solve?
GroupActivities and SharePlay enable real-time coordination of shared experiences across devices, resolving the complexity of keeping media, state, and user interactions synchronized during FaceTime or iMessage sessions.
Core Features & Use Cases
- Define a GroupActivity and its metadata to coordinate sessions across devices.
- Manage session lifecycle: observe, join, and track participant changes.
- Exchange messages and synchronize state using GroupSessionMessenger and GroupSessionJournal for large data transfers.
- Coordinate media playback across participants with AVPlaybackCoordinator.
- Launch SharePlay from within your app via GroupActivitySharingController and activation patterns.
- Ensure late joiners receive the current state to catch up and stay in sync.
- Provide SwiftUI integration examples for UI indicators and controls.
Quick Start
Create a WatchTogetherActivity with movieID and movieTitle, then call prepareForActivation() to start or join a SharePlay session.