---
title: Group Activities
framework: Group Activities
role: collection
role_heading: Framework
platforms: [iOS 15.0+, iPadOS 15.0+, Mac Catalyst 15.0+, macOS 12.0+, tvOS 15.0+, visionOS 1.0+]
path: groupactivities
---

# Group Activities

Create app-specific activities your users can share and experience together.

## Overview

Overview With the Group Activities framework, you can provide your app’s content in SharePlay experiences, which create a sense of connection and immediacy for your users. For example, a video-streaming app might offer the ability to attend movie-watching parties in which participants watch simultaneously from their personal devices. The app handles the playback on each device, but the Group Activities framework synchronizes that playback and facilitates communication between the devices. This framework leverages the FaceTime infrastructure to synchronize your app’s activities and to invite other participants to join those activities. When your app’s UI contains shareable activities, adopt the GroupActivity protocol in the objects you use to represent those activities. When a group activity begins, use the GroupSession object to synchronize your app’s behavior with other participating devices. note: The Group Activities framework uses end-to-end encryption on all session data that the GroupSession object synchronizes between devices. Apple doesn’t have the keys to decrypt this data. Your use of the Group Activities framework doesn’t provide Apple with visibility into the content your app shares, or information related to playback of media content in your app, such as where in the content a user starts, pauses, or skips a session. Apple servers facilitating Group Activities sessions don’t know the identity of your app. Occasionally, Apple may ask a small number of users to help troubleshoot issues, such as by capturing a sysdiagnose or installing a debugging profile, which may incidentally result in Apple collecting some information related to content shared in your app.

## Topics

### Essentials

- [com.apple.developer.group-session](bundleresources/entitlements/com.apple.developer.group-session.md)

### Activity definition

- [Defining your app’s SharePlay activities](groupactivities/defining-your-apps-shareplay-activities.md)
- [Supporting coordinated media playback](avfoundation/supporting-coordinated-media-playback.md)
- [GroupActivity](groupactivities/groupactivity.md)
- [GroupActivityMetadata](groupactivities/groupactivitymetadata.md)
- [GroupActivityActivationResult](groupactivities/groupactivityactivationresult.md)
- [GroupActivityTransferRepresentation](groupactivities/groupactivitytransferrepresentation.md)

### Interface presentation

- [Presenting SharePlay activities from your app’s UI](groupactivities/promoting-shareplay-activities-from-your-apps-ui.md)
- [GroupActivitySharingController](groupactivities/groupactivitysharingcontroller-4gtfk.md)
- [GroupActivitySharingController](groupactivities/groupactivitysharingcontroller-ybcy.md)

### Session management

- [Joining and managing a shared activity](groupactivities/joining-and-managing-a-shared-activity.md)
- [Drawing content in a group session](groupactivities/drawing-content-in-a-group-session.md)
- [GroupSession](groupactivities/groupsession.md)
- [CustomMessageIdentifiable](groupactivities/custommessageidentifiable.md)
- [Participant](groupactivities/participant.md)

### Spatial activities

- [Configure your visionOS app for sharing with people nearby](groupactivities/configure-your-app-for-sharing-with-people-nearby.md)
- [Adding spatial Persona support to an activity](groupactivities/adding-spatial-persona-support-to-an-activity.md)
- [Implementing SharePlay for immersive spaces in visionOS](visionos/implementing-shareplay-for-immersive-spaces-in-visionos.md)
- [SystemCoordinator](groupactivities/systemcoordinator.md)
- [SystemCoordinator.ParticipantState](groupactivities/systemcoordinator/participantstate.md)
- [groupActivityAssociation(_:)](swiftui/view/groupactivityassociation(_:).md)
- [GroupActivityAssociationInteraction](groupactivities/groupactivityassociationinteraction.md)
- [GroupActivityAssociationKind](groupactivities/groupactivityassociationkind.md)

### Custom spatial templates

- [Building a guessing game for visionOS](groupactivities/building-a-guessing-game-for-visionos.md)
- [SpatialTemplate](groupactivities/spatialtemplate.md)
- [SpatialTemplatePreference](groupactivities/spatialtemplatepreference.md)
- [SpatialTemplateSeatElement](groupactivities/spatialtemplateseatelement.md)
- [SpatialTemplateElement](groupactivities/spatialtemplateelement.md)
- [SpatialTemplateElementPosition](groupactivities/spatialtemplateelementposition.md)
- [SpatialTemplateElementDirection](groupactivities/spatialtemplateelementdirection.md)
- [SpatialTemplateRole](groupactivities/spatialtemplaterole.md)

### File and data transfer

- [Creating a collaborative photo gallery with SharePlay](groupactivities/creating-a-collaborative-photo-gallery-with-shareplay.md)
- [Synchronizing data during a SharePlay activity](groupactivities/synchronizing-data-during-a-shareplay-activity.md)
- [GroupSessionMessenger](groupactivities/groupsessionmessenger.md)
- [GroupSessionJournal](groupactivities/groupsessionjournal.md)

### System status

- [GroupStateObserver](groupactivities/groupstateobserver.md)
