The iOS & iPadOS 14 SDK provides support to develop apps for iPhone, iPad, and iPod touch devices running iOS & iPadOS 14. The SDK comes bundled with Xcode 12, available from the Mac App Store. For information on the compatibility requirements for Xcode 12, see Xcode 12 Release Notes.

General

Known Issues

  • Important: Updating to iOS & iPadOS 14 from previous versions of iOS & iPadOS might take significantly longer than expected. Data loss could occur if the update is interrupted. (59101197)
  • macOS Big Sur 11 beta 6 or Xcode 12 might be required to sync or update devices running iOS & iPadOS 14 or later.
  • macOS Big Sur 11 beta 6 is required to use the restore images for iOS & iPadOS 14 or later.

App Clips

New Features

  • You can now use Settings > Developer Settings to test an App Clip card. (64787288)

App Store

Known Issues

  • Avoid calling the presentCodeRedemptionSheet() API until you’re able to create supported codes. (59351258)

New Features

  • SKOverlay enables downloading an app without having to leave the current app. The overlay can also be tapped to view the app in the App Store. In an App Clip, SKOverlay enables users to download the corresponding full app from within the App Clip. (56886149)
  • You can now manage subscriptions, test upgrades, downgrades, and cancellations, as well as reset the introductory offer eligibility for a test account, by tapping on your sandbox account in Settings. (57248908)
  • The userInfo parameter can now be passed to Account Authentication Modification Extensions during in-app upgrades. (64128404)
  • AVFoundation
  • New Features
  • A new feature in AVAudioSession allows clients to request stereo polar patterns from the built-in mic. Clients choosing a stereo polar pattern must call a new method of AVAudioSession to specify the stereo input orientation. For more information, see AVAudioSession (58584572)

Core Haptics

Known Issues

  • CHHapticEngine vended through the Game Controller framework (GCDeviceHaptics) don’t support CHHapticAdvancedPatternPlayer and an error is returned on advanced player creation.
  • audioCustom and audioContinuous events sent to CHHapticEngine vended through the Game Controller framework (GCDeviceHaptics) are silently ignored. (65163373)
  • The creation of CHHapticEngine via class initializers is available only in iOS. For other platforms, access these engines via GCController. (65481931)

Core ML

Deprecations

  • The default initializer on the auto-generated model interface has been deprecated in favor of init(configuration:). Use init(configuration:) or the newly introduced .load() method and handle model load errors as appropriate. (64432588)

Fonts

Known Issues

  • Beginning in iOS & iPadOS 14, fonts installed using configuration profiles are only available to apps supporting the font APIs and entitlements introduced in iOS & iPadOS 13. If your app provides a custom font-selection interface, it can no longer access fonts installed via configuration profiles. For reference, see the WWDC 2019 Session Font Management and Text Scaling (55317428)

HealthKit

New Features

  • New data types are available to track mobility metrics including walking speed, step length, double-support percentage, and more. (56387364)
  • HKElectrocardiogram enables reading electrocardiogram voltage data and classifications recorded by Apple Watch. (56396806)

Home Screen

Known Issues

  • Spotlight might not appear as expected. (64121178)
  • Workaround: Restart your device.

Key-Value Observing

New Features

  • Key-Value Observation removal facilities now employ deterministic bookkeeping methods. Cases that would have produced hard-to-diagnose crashes, especially those where KVO signals problems accessing deallocated observer pointers or observers associated with incorrect objects, now produce an exception that pinpoints which observed object needs a missed removeObserver(_:) call, and by which observers. This exception was previously thrown as ‘best effort’ when KVO could detect the problem; the new deterministic bookkeeping allows it to be thrown for all cases where removeObserver(_:) is needed.
  • The improved determinism also allows improved Swift API handling. Instances of NSKeyValueObservation, produced by the Swift NSObject.observe(_:changeHandler:) method, take advantage of integration with this bookkeeping so they now invalidate automatically when the observed object is released, regardless of how the object implements its KVO behavior. This applies to all usage of this API in macOS 11 Big Sur beta, including on processes built with previous versions of the SDK, and eliminates certain classes of crashes that sometimes required using the legacy API instead. (65051563)

Localization

New Features

  • Three Simplified Chinese Wubi input methods are now supported: Wubi 86, Wubi 98, and Wubi New Century. (56277474)
  • QuickPath now supports swiping English words on the Simplified Chinese Pinyin keyboard. (56314466)
  • Typing numbers using the Japanese Kana keyboard has been significantly enhanced. (56285976)
  • CarPlay keyboard support has been added for over 100 additional languages. (56791047)
  • Irish Gaelic and Norwegian Nynorsk keyboards now support Auto-Correction. (53156919, 48183197)

Logging

New Features

  • New APIs are available for using os_log from Swift as part of the framework os:
  • A new type, Logger, can be instantiated using a subsystem and category and provides methods for logging at different levels (Logger.debug, Logger.error, Logger.fault).
  • The Logger APIs support specifying most formatting and privacy options supported by legacy Logging APIs.
  • The new APIs provide significant performance improvements over the legacy APIs.
  • You can now pass Swift string interpolation to the os_log function.
  • Note: The new APIs can’t be back deployed; however, the existing os_log API remains available for back deployment. (22539144)

Maps

Known Issues

  • After updating to iOS & iPadOS 14 beta 2 or later, user data, such as Favorites, Collections, and Recents no longer syncs with devices running earlier versions of iOS & iPadOS. (65005848)

Networking

New Features

  • Experimental HTTP/3 support can be enabled in Safari Settings > Advanced > Experimental Features, and enabled system-wide in Developer settings. (62969220)

RealityKit

New Features

  • To properly render an augmented reality Scene with the post-processing effects available in RealityKit, the pipeline now writes depth information when rendering translucent materials. This makes the order that meshes are drawn more impactful for the final image. To properly author content for this pipeline, break up big meshes into smaller parts, especially when the meshes are intertwined. (66535399)

Siri

New Features

  • You can use INMediaUserContext, Core Spotlight, and Intents to improve media interactions and App Selection. For more information, see Improving Siri Media Interactions and App Selection. (67026608)

Safari and WebKit

New Features

  • Webpage Translation is now available in the U.S. and Canada. Supported languages include English, Spanish, Simplified Chinese, French, German, Russian, and Brazilian Portuguese. Safari will automatically detect if translation is available based on your Preferred Languages list. (64437861)

SwiftUI

Known Issues

  • The KeyboardShortcut modifier and commands(content:) aren’t currently functional. (65704705)
  • Rebuilding against the iOS 14 SDK will modify instances of custom(_:size:) to scale with dynamic type. To create a font which doesn’t scale with dynamic type, use custom(_:fixedSize:). (51463566)
  • The SignInWithAppleButton view expands to fill its container. (64136568)
  • Workaround: Apply a frame modifier.

New Features

  • body is now implicitly a ViewBuilder and body is now implicitly a SceneBuilder. (63606493)
  • Color can be converted to and from CGColor. The ColorPicker can also now be configured with a binding to a CGColor. (56939085)
  • Introduced ToolbarItemGroup as a convenient way to place multiple items in a specific location of non-customizable toolbars. (64178863)
  • ProgressView now supports adding a secondary “current value label” that describes the current progress level of the task. Use the label to describe the overall task, and the ProgressViewStyleConfiguration.CurrentValueLabel to provide more specific details about the progress of the task. (63580200)
  • FileDocument and ReferenceFileDocument have updated protocol requirements:
  • Their initializer requirement now has a single FileDocumentReadConfiguration parameter that the fileWrapper and contentType can be read from.
  • Their write() functions that were expected to write to an inout FileWrapper parameter are now fileWrapper() functions that return a FileWrapper instead.
  • The document-based app templates in Xcode have been updated to reflect this change in API.
  • Source compatibility with the previous requirements will eventually be removed. (65146043)
  • KeyboardShortcut and Commands are now available on iOS & iPadOS. (62614998)
  • Image is now redacted when the redacted(reason:) modifier is applied. (65047189)
  • InlinePickerStyle is now available and allows a Picker to appear in-line with the rest of the content in its surrounding container. The style will adapt its appearance for different containers and platforms, such as individual menu items in a menu. (59868844)
  • MenuPickerStyle is now available and allows a Picker to present its options within a menu. This style will display its options within a submenu when the Picker is nested within a Menu, ContextMenu, or CommandMenu. (65515392)
  • List may now be used with ScrollViewReader. (35471164)
  • Text gains a new initializer accepting a Formatter. (63641785)
  • Menu is now supported on iOS & iPadOS and can be used to create a button that shows a menu as its primary action. (59725999)
  • A new redaction reason API for applying placeholder Text treatment is now available. (63288447)
  • The ImportFilesAction and ExportFilesAction APIs have been replaced with a collection of new view modifiers.

Some features may not be available for all regions, or on all Apple devices, for more information visit:

https://www.apple.com/ios/feature-availability and https://www.apple.com/ios/whats-new

For information on the security content of this update, please visit this website:

https://support.apple.com/kb/HT201222