---
title: AppExtensionConfiguration
framework: extensionfoundation
role: symbol
role_heading: Protocol
path: extensionfoundation/appextensionconfiguration
---

# AppExtensionConfiguration

An interface you use to configure the XPC connection in your app extension.

## Declaration

```swift
@MainActor @preconcurrency protocol AppExtensionConfiguration : Sendable
```

## Mentioned in

Building an app extension to support a host app

## Overview

Overview Adopt this protocol in a custom type, and use that type to finalize the XPC connection to the host app. The host app tries to create an XPC connection to your app extension shortly after launching it. The system directs that connection request to the code in your configuration object. Use your code to provide the host with the information it needs to communicate with your app extension. This protocol supports app extensions that don’t offer any custom UI. If your app extension provides custom UI, instead use the  AppExtensionSceneConfiguration type from ExtensionKit.

## Topics

### Accepting a connection to the host app

- [accept(connection:)](extensionfoundation/appextensionconfiguration/accept(connection:).md)

## Relationships

### Inherits From

- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

### Conforming Types

- [ConnectionHandler](extensionfoundation/connectionhandler.md)

## See Also

### App-extension setup

- [Building an app extension to support a host app](extensionfoundation/building-an-app-extension-to-support-a-host-app.md)
- [AppExtension](extensionfoundation/appextension.md)
- [ConnectionHandler](extensionfoundation/connectionhandler.md)
