Document Providers

A document provider extension implements a custom interface for importing, exporting, opening, or moving an app’s documents from within other apps on the system. When a document provider extension loads, its interface displays in a modal view containing a navigation bar.

When users open or import files, show only context-specific documents and information. When someone uses your extension to open or import documents, only display documents that are appropriate for the current context. For example, if a PDF-editing app loads your extension, only list PDF files as possible documents that can be opened or imported. Be sure to list other information that may be helpful too, such as modification dates, sizes, and whether documents are local or remote.

Let people select a destination when exporting and moving documents. Unless your app stores documents in a single directory, let users navigate to a specific destination in your directory hierarchy. Consider providing a way to add new subdirectories.

Don’t provide a custom navigation bar. Your extension loads within a modal view that already includes a navigation bar. Providing a second navigation bar is confusing and takes space away from your content.

For implementation details, see Document Provider in App Extension Programming Guide.