---
title: MultipeerConnectivityService
framework: realitykit
role: symbol
role_heading: Class
path: realitykit/multipeerconnectivityservice
---

# MultipeerConnectivityService

A service that provides scene synchronization among all peers in a multipeer connectivity session.

## Declaration

```swift
class MultipeerConnectivityService
```

## Overview

Overview RealityKit uses this class to automatically sync scenes with other connected devices running the same app. It leverages the Multipeer Connectivity framework to automatically keep the scenes of all connected devices synchronized. To sync a RealityKit scene, create a MultipeerConnectivityService object initialized with an MCSession and assign it to your scene’s synchronizationService property. let peerID = MCPeerID(displayName: UIDevice.current.name) let session = MCSession(peer: peerID, securityIdentity: nil, encryptionPreference: .required) arView.scene.synchronizationService = try? MultipeerConnectivityService(session: self.session) For more information on browsing for, and connecting to, other devices, see Multipeer Connectivity.

## Topics

### Creating a connectivity service

- [init(session:)](realitykit/multipeerconnectivityservice/init(session:).md)

### Getting the session

- [session](realitykit/multipeerconnectivityservice/session.md)

### Managing ownership

- [owner(of:)](realitykit/multipeerconnectivityservice/owner(of:).md)
- [giveOwnership(of:toPeer:)](realitykit/multipeerconnectivityservice/giveownership(of:topeer:).md)

### Finding an entity

- [entity(for:)](realitykit/multipeerconnectivityservice/entity(for:).md)

### Pausing and resuming

- [stopSync()](realitykit/multipeerconnectivityservice/stopsync().md)
- [startSync()](realitykit/multipeerconnectivityservice/startsync().md)

### Configuring the session

- [setHandshake(count:timeoutMs:)](realitykit/multipeerconnectivityservice/sethandshake(count:timeoutms:).md)

## Relationships

### Conforms To

- [SynchronizationService](realitykit/synchronizationservice.md)

## See Also

### Multipeer synchronization

- [Loading remote assets in multiplayer apps](realitykit/loading-remote-assets.md)
- [NetworkCompatibilityToken](realitykit/networkcompatibilitytoken.md)
- [NetworkCompatibilityToken.Compatibility](realitykit/networkcompatibilitytoken/compatibility.md)
- [TransientComponent](realitykit/transientcomponent.md)
