<!--
{
  "availability" : [
    "FxPlug: 4.1.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "professional_video_applications",
  "identifier" : "/documentation/professional_video_applications/FxPrincipalDelegate",
  "metadataVersion" : "0.1.0",
  "role" : "Protocol",
  "symbol" : {
    "kind" : "Protocol",
    "modules" : [
      "Professional Video Applications"
    ],
    "preciseIdentifier" : "c:objc(pl)FxPrincipalDelegate"
  },
  "title" : "FxPrincipalDelegate"
}
-->

# FxPrincipalDelegate

A protocol that provides information about the host application that launched your XPC service.

```
protocol FxPrincipalDelegate
```

## Overview

When the host application first launches your XPC Service, your XPC calls +[`startServicePrincipal(with:)`](/documentation/professional_video_applications/FxPrincipal/startServicePrincipal(with:)) to get communication with the host application started. Passing in a delegate allows you to know which host application and version launched your XPC service.

## Topics

### Instance Method

[`func didEstablishConnection(withHost: String!, version: String!)`](/documentation/professional_video_applications/FxPrincipalDelegate/didEstablishConnection(withHost:version:))

Notifies your XPC service that a connection was established with the host.



---

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)