<!--
{
  "availability" : [
    "iOS: 13.0.0 -",
    "iPadOS: 13.0.0 -",
    "macCatalyst: 13.1.0 -",
    "tvOS: 13.0.0 -",
    "visionOS: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "UIKit",
  "identifier" : "/documentation/UIKit/UIScene/ConnectionOptions",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "UIKit"
    ],
    "preciseIdentifier" : "c:objc(cs)UISceneConnectionOptions"
  },
  "title" : "UIScene.ConnectionOptions"
}
-->

# UIScene.ConnectionOptions

A data object containing information about the reasons why UIKit created the scene.

```
@MainActor class ConnectionOptions
```

## Overview

UIKit creates scenes for many reasons. It might do so in response to a Handoff request or a request to open a URL. When there’s a specific reason for creating a scene, UIKit fills a [`UIScene.ConnectionOptions`](/documentation/UIKit/UIScene/ConnectionOptions) object with the associated data and passes it to your delegate at connection time. Use the information in this object to respond accordingly. For example, open the URLs that UIKit provides, and display their contents in the scene.

Don’t create [`UIScene.ConnectionOptions`](/documentation/UIKit/UIScene/ConnectionOptions) objects directly. UIKit creates [`UIScene.ConnectionOptions`](/documentation/UIKit/UIScene/ConnectionOptions) objects for you and passes them to the [`scene(_:willConnectTo:options:)`](/documentation/UIKit/UISceneDelegate/scene(_:willConnectTo:options:)) method of your scene delegate.

## Topics

### Configuring the scene’s interface

[`userActivities`](/documentation/UIKit/UIScene/ConnectionOptions/userActivities)

Information about user activities that you can use to configure your scene’s interface.

### Handling quick actions

[`shortcutItem`](/documentation/UIKit/UIScene/ConnectionOptions/shortcutItem)

The user-selected action to perform.

### Opening URLs

[`urlContexts`](/documentation/UIKit/UIScene/ConnectionOptions/urlContexts)

The URLs to open, along with metadata specifying how to open them.

### Responding to a Handoff request

[`handoffUserActivityType`](/documentation/UIKit/UIScene/ConnectionOptions/handoffUserActivityType)

The type of the pending Handoff activity.

### Accepting a CloudKit share

[`cloudKitShareMetadata`](/documentation/UIKit/UIScene/ConnectionOptions/cloudKitShareMetadata)

Information about the CloudKit data that’s now available to the app.

### Responding to notifications

[`notificationResponse`](/documentation/UIKit/UIScene/ConnectionOptions/notificationResponse)

A person’s response to one of your app’s notifications.

### Preparing for Near-Field Communication (NFC)

[`nfcEvent`](/documentation/UIKit/UIScene/ConnectionOptions/nfcEvent)

An event, such as a gesture or exposure to a card reader’s RF field, that creates a Near-Field Communication (NFC) scene.

### Getting the source app

[`sourceApplication`](/documentation/UIKit/UIScene/ConnectionOptions/sourceApplication)

The bundle ID of the app that originated the request.

### Getting scene accessory context

[`sceneAccessoryUserInfo`](/documentation/UIKit/UIScene/ConnectionOptions/sceneAccessoryUserInfo)

An optional user info object, provided when creating the `UISceneAccessory` for this scene accessory.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)