<!--
{
  "availability" : [
    "iOS: 27.0.0 -",
    "iPadOS: 27.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "BundleResources",
  "identifier" : "/documentation/BundleResources/Information-Property-List/MDESupportedProtocols",
  "metadataVersion" : "0.1.0",
  "role" : "Property List Key",
  "symbol" : {
    "kind" : "Property List Key",
    "modules" : [
      "Bundle Resources"
    ],
    "preciseIdentifier" : "plist:Information_Property_List.MDESupportedProtocols"
  },
  "title" : "MDESupportedProtocols"
}
-->

# MDESupportedProtocols

A dictionary that declares which media sharing extension protocols an app supports.

## Discussion

Add this key to your media app’s Info pane in Xcode to declare support for one or more media device extension protocols. Each dictionary entry maps a protocol identifier to an application identifier on the remote device:

```xml
<key>MDESupportedProtocols</key>
<dict>
    <key>com.example.sharingprotocol</key>
    <string>com.example.myapplicationidentifier</string>
</dict>
```

The dictionary key is the protocol’s [`UTTypeIdentifier`](/documentation/BundleResources/Information-Property-List/UTExportedTypeDeclarations/UTTypeIdentifier), matching the value declared in a media device extension’s [`UTExportedTypeDeclarations`](/documentation/BundleResources/Information-Property-List/UTExportedTypeDeclarations). The string value is the app identifier that the protocol launches on the remote device. The value can be empty when the protocol targets no specific remote application.

When a media device extension supporting one of the listed protocols is available on the system, or you set [`MDESupportsUniversalURLPlayback`](/documentation/BundleResources/Information-Property-List/MDESupportsUniversalURLPlayback) to `true` and any URL-playback supporting extension is available on the system, <doc://com.apple.documentation/documentation/AVSystemRouting/AVSystemRouteController-18ns8/supportedExtensionAvailable> returns `true` and your app can observe routing events through <doc://com.apple.documentation/documentation/AVSystemRouting/AVSystemRouteController-18ns8>.

Use the <doc://com.apple.documentation/documentation/AVSystemRouting/AVSystemRoute-5s2um/LaunchMode/application> launch mode to start your counterpart app on the remote device using the configured application identifier.

---

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)