70 %
Chris Biscardi

SwiftUI Document Apps

export const meta = { tags: ["swiftui"] }

UTI

You can define a new type (like MDX) that a Swift/Mac OS Document app can do things with. These UTIs can be declared to conform to other UTIs, such as public.plain-text to allow the clipboard, NSDocument, etc to handle them.

Launch Screen Info PList Key

new in 2020, doesn't replace storyboards for launch screens.

"Build Document-Based apps in SwiftUI" -- WWDC 2020

FileProvider

Physical vs Functional UTI tree is the "functional" representation (plain text, spreadsheet, etc) vs the "on-disk" format.

  • public.data is a single file on disk
  • com.apple.package is multiple files on disk (DocumentPackage)

NSFileProviderService

Access a low-level (libSystem) interprocess communication mechanism that is based on serialized property lists.

App Extension Types

FileProviderExtension