How to appear on the "Open In..." menu

Hi, I am working on an iOS app that has a custom document type that can be shared with other devices through Airdrop, iMessages, etc. The app should appear in the "Open In..." menu upon receiving the file however, currently it gets directed straight to the files app. I got this feature to work in a previous iteration of the app in iOS 16 but it no longer works with iOS 17. The feature is also broken with the previous iteration in iOS 17. I have defined the custom document type under both Documents Type and Exported Type Identifiers. I have attached a copy of the info.plist below. My question is how can you make your app appear under the list of apps shown in the "Open In..." menu that appears when receiving files for a custom file type.

<plist version="1.0">
<dict>
	<key>CFBundleDocumentTypes</key>
	<array>
		<dict>
			<key>CFBundleTypeIconSystemGenerated</key>
			<integer>1</integer>
			<key>CFBundleTypeName</key>
			<string>RecordingList</string>
			<key>CFBundleTypeRole</key>
			<string>Editor</string>
			<key>LSHandlerRank</key>
			<string>Owner</string>
			<key>LSItemContentTypes</key>
			<array>
				<string>com.nikodittmar.MyRaceTimer.recordinglist</string>
			</array>
		</dict>
	</array>
	<key>UTExportedTypeDeclarations</key>
	<array>
		<dict>
			<key>UTTypeConformsTo</key>
			<array>
				<string>public.data</string>
			</array>
			<key>UTTypeDescription</key>
			<string>RecordingList</string>
			<key>UTTypeIcons</key>
			<dict/>
			<key>UTTypeIdentifier</key>
			<string>com.nikodittmar.MyRaceTimer.recordinglist</string>
			<key>UTTypeTagSpecification</key>
			<dict>
				<key>public.filename-extension</key>
				<array>
					<string>recordinglist</string>
				</array>
			</dict>
		</dict>
	</array>
	<key>UTImportedTypeDeclarations</key>
	<array>
		<dict>
			<key>UTTypeConformsTo</key>
			<array>
				<string>public.plain-text</string>
			</array>
			<key>UTTypeDescription</key>
			<string>CSV</string>
			<key>UTTypeIcons</key>
			<dict/>
			<key>UTTypeIdentifier</key>
			<string>public.comma-separated-values-text</string>
			<key>UTTypeTagSpecification</key>
			<dict>
				<key>public.filename-extension</key>
				<array>
					<string>csv</string>
				</array>
				<key>public.mime-type</key>
				<array>
					<string>text/csv</string>
				</array>
			</dict>
		</dict>
	</array>
</dict>
</plist>
import UniformTypeIdentifiers

extension UTType {
    static var recordingList: UTType { UTType(exportedAs: "com.nikodittmar.MyRaceTimer.recordinglist") }
}

Thanks.

Replies

it no longer works with iOS 17.

There has been at least one other thread about this, but they aren't easy to find because the forum search is so *****.

IIRC, this is a deliberate change.

I consider this to be the ‘lead’ thread for this issue.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"