iOS 26 to iOS 27 Migration: Complete Before/After API Reference
Your iOS 26 app will run on iOS 27, but several high-impact APIs have changed behaviour, signatures, or default values. WWDC 2026 introduced 14 updated capabilities — APIs that exist in iOS 26 but work differently in iOS 27. This reference covers all of them, ordered by impact score, with a summary of exactly what changed and a link to the full detail page showing the before/after Swift code.
High-impact changes are APIs used by most apps and are likely to cause build warnings, unexpected behaviour, or failed tests when upgrading. Address these before the first public beta.
High impact — update before beta
iOS 27 brings a sweeping set of SwiftUI enhancements including Liquid Glass design adoption, new toolbar visibility and overflow APIs, document architecture improvements with Observable, and resizable iPhone app support — all designed to modernize app UIs with minimal code changes.
↳ Liquid Glass design is automatically applied to SwiftUI apps on 2027 OS releases with no code changes required
iOS 27 brings significant updates to Live Activities and the Dynamic Island, including new expanded presentations, richer interactivity via App Intents directly from the island, and updated layout APIs for more expressive minimal and compact views.
↳ Compact and minimal Dynamic Island views now accept SwiftUI interactive controls (Button, Toggle) backed by App Intents — previously these views were display-only
iOS 27 extends App Intents with new APIs for custom Siri dialog responses, interaction donations, OwnershipProvidingEntity for smart confirmations, and IndexedEntityQuery for semantic Spotlight indexing — enabling richer, more personal Siri and Apple Intelligence experiences.
↳ New OwnershipProvidingEntity protocol lets entities declare public/shared state so Siri auto-confirms before mutating shared data
MetricKit has been rebuilt from the ground up in iOS 27 with a contextually rich, Swift-first API that delivers metrics and diagnostics as async streams, plus new capabilities like Metal frame rate metrics, memory exception diagnostics, and per-state metric breakdowns via the StateReporting framework.
↳ Entire API rebuilt as a modern Swift-first async stream interface replacing the old MXMetricManagerSubscriber delegate pattern
iOS 27 expands the App Intents framework with RelevantEntities for contextual content surfacing, EntityCollection for high-performance batch parameter handling, SyncableEntity for cross-device Siri continuity, native Duration/PersonNameComponents parameter types, and @UnionValue for multi-type parameters — plus extended intent execution time limits.
↳ Added RelevantEntities API to proactively hint which entities are contextually relevant, complementing Spotlight indexing and interaction donation
iOS 27 enforces stricter adaptivity requirements for UIKit apps, making iPhone apps fully resizable in iPhone Mirroring and on iPad, while introducing new navigation bar minimization controls, sidebar opt-in for iPhone tab bars, and prominent tab customization.
↳ UIScene lifecycle is now mandatory — apps built without it will fail to launch on iOS 27
iOS 27 expands App Intents to deeply integrate with Siri's on-device language model, enabling natural-language invocation of app actions with richer parameter resolution and multi-step task chaining. Apps can now expose capabilities that Siri understands contextually without rigid phrase matching.
↳ New @AssistantIntent macro replaces boilerplate AppIntent+AssistantSchema conformances from iOS 26
iOS 27 adds sectioned queries, codable model attributes, ResultsObserver for non-SwiftUI change observation, and HistoryObserver for reacting to persistent history changes in SwiftData.
↳ Added sectionBy parameter to @Query for sectioned SwiftUI lists without manual grouping
Medium impact
iOS 27 introduces NSTextViewportRenderingSurface and NSTextViewportRenderingSurfaceKey protocols, and makes UITextView/NSTextView conform to NSTextViewportLayoutControllerDelegate — enabling developers to override viewport layout lifecycle methods to build rich extensions like line-number gutters without leaving the safety of framework text views.
↳ UITextView and NSTextView now conform to NSTextViewportLayoutControllerDelegate, exposing willLayout, configureRenderingSurface, and didLayout as overridable methods in subclasses — this was not possible before iOS 27.
visionOS supports fully photo-realistic, spatially-aware 360° immersive environments with true depth, parallax, spatial audio, and motion — going far beyond static panoramas. Developers can now surface these environments on both native visionOS apps and the spatial web.
↳ visionOS 3 extends immersive environments to the spatial web, allowing web pages to trigger full immersion via new WebXR/spatial APIs
iOS/macOS 2026 adds NSGestureRecognizerRepresentable, NSHostingMenu, and NSHostingSceneRepresentation, making it easier than ever to incrementally adopt SwiftUI inside existing AppKit apps without a full rewrite. Observable tracking in NSView draw methods is also enabled by default.
↳ New NSGestureRecognizerRepresentable protocol allows embedding custom NSGestureRecognizer subclasses in SwiftUI views
macOS 27 introduces NSTextSelectionManager for custom text selection in any view, while reinforcing best practices for gesture recognizers, keyboard navigation, and NSWindowRestoration to make AppKit apps feel native and resilient.
↳ NSTextSelectionManager introduced in macOS 27 as a new API bringing gesture-recognizer-backed text selection to arbitrary views
iOS 27 (and macOS 15) brings the systemExtraLargePortrait widget family — previously visionOS-only — to iPhone, iPad, and Mac, giving widgets a tall canvas to display rich app content. Developers can now support this new family size alongside existing families with minimal code changes.
↳ systemExtraLargePortrait widget family added to iOS, iPadOS, and macOS 27 (was visionOS-only before).
iOS 27 introduces updated search field placement patterns with Liquid Glass styling, including ergonomic bottom-toolbar search that animates over the keyboard, prominent Search Tab options, and adaptive toolbar search that collapses to a button on constrained layouts.
↳ Search fields placed in toolbars now automatically render with Liquid Glass material instead of the previous opaque bar background
See before/after Swift diffs
Each capability detail page shows the complete iOS 26 vs iOS 27 Swift code side-by-side.
Updated APIs in SwiftChronicle