During this deployment, it found that a single help desk person was able to support 5,400 Mac users — even though it took about 22 people to support the equivalent number of PC users.
Xcode is a complete developer toolset for creating apps for Mac, iPhone, iPad, Apple Watch, and Apple TV. Xcode brings user interface design, coding, testing, debugging, and submitting to the App Store all into a unified workflow.
Downloading and updating Xcode
- After you’ve taken these steps, macOS users covered in the policy will be able to access Azure AD connected applications only if their Mac conforms to your organization’s policies. Supported OS versions, applications, and browsers. In the public preview, the following OS versions, applications, and browsers are supported on macOS: Operating.
- Apple strives to bring the best personal computing experience to students, educators, creative professionals, and consumers around the world through its innovative hardware, software, and internet offerings. Apple welcomes your feedback on its products. Begin by selecting a product below.
The current release of Xcode is available as a free download from the Mac App Store. The Mac App Store will notify you when an update is available or you can have macOS update automatically as it becomes available.
The latest beta version and previous versions of Xcode can be downloaded from the Downloads page. To download Xcode, simply sign in with your Apple ID.Apple Developer Program membership is not required.
Using Xcode
Get step-by-step guidance on how to use Xcode to build, test, and submit apps to the App Store.
Submitting apps to the App Store using Xcode
If you’re an Apple Developer Program member, Xcode provides an integrated workflow to prepare and submit apps to App Store. You should use the latest version of Xcode available on the Mac App Store to submit your apps, or when available, the latest GM seed release from the Downloads page.
Do not submit apps built using beta software, as beta versions of Xcode, Operating Systems, and SDKs are for development and testing only.
Learning about changes to Xcode
To learn about the latest features and capabilities in Xcode, see What’s New in Xcode. For update details in the latest released versions, including each beta release, see the Xcode Release Notes.
Minimum requirements and supported SDKs
Xcode Version | Minimum OS Required | SDK | Architecture | OS | Simulator | Swift |
---|---|---|---|---|---|---|
Xcode 12.2 beta | macOS Catalina 10.15.4 (Intel-based Mac) macOS Big Sur 11.0 (Apple silicon Mac) | iOS 14.2 macOS 11 tvOS 14.2 watchOS 7.1 DriverKit 20.0 | x86_64 armv7 armv7s arm64 arm64e | iOS 9.0-14.2 iPadOS 13.0-14.2 macOS 10.9-11.0 tvOS 9.0-14.2 watchOS 2.0-7.1 | iOS 10.3.1-14.2 tvOS 10.2-14.2 watchOS 3.2-7.1 | Swift 4 Swift 4.2 Swift 5.3 |
Xcode 12.1 | macOS Catalina 10.15.4 (Intel-based Mac) macOS Big Sur 11.0 (Apple silicon Mac) | iOS 14.1 macOS 10.15.6 tvOS 14.0 watchOS 7.0 DriverKit 20.0 | x86_64 armv7 armv7s arm64 arm64e | iOS 9.0-14.1 iPadOS 13.0-14.1 macOS 10.9-11.0 tvOS 9.0-14.0 watchOS 2.0-7.0 | iOS 10.3.1-14.1 tvOS 10.2-14.0 watchOS 2.0-7.0 | Swift 4 Swift 4.2 Swift 5.3 |
Xcode 12 | macOS Catalina 10.15.4 (Intel-based Mac) | iOS 14 macOS 10.15.6 tvOS 14 watchOS 7.0 DriverKit 20.0 | x86_64 armv7 armv7s arm64 arm64e | iOS 9.0-14.0 iPadOS 13.0-14.0 macOS 10.6-10.15.6 tvOS 9.0-14.0 watchOS 2.0-7.0 | iOS 10.3.1-14.0 tvOS 10.2-14.0 watchOS 3.2-7.0 | Swift 4 Swift 4.2 Swift 5.3 |
Xcode 11.7 | macOS Catalina 10.15.2 | iOS 13.7 macOS 10.15.6 tvOS 13.4 watchOS 6.2 DriverKit 19.0 | x86_64 armv7 armv7s arm64 arm64e | iOS 8.0-13.7 iPadOS 13.0-13.7 macOS 10.6-10.15.6 tvOS 9.0-13.4 watchOS 2.0-6.2 | iOS 10.3.1-13.7 tvOS 10.2-13.4 watchOS 3.2-6.2 | Swift 4 Swift 4.2 Swift 5.2 |
Xcode 11.6 | macOS Catalina 10.15.2 | iOS 13.6 macOS 10.15.6 tvOS 13.4 watchOS 6.2 DriverKit 19.0 | x86_64 armv7 armv7s arm64 arm64e | iOS 8.0-13.6 iPadOS 13.0-13.6 macOS 10.6-10.5.6 tvOS 9.0-13.4 watchOS 2.0-6.2 | iOS 10.3.1-13.6 tvOS 10.2-13.4 watchOS 3.2-6.2 | Swift 4 Swift 4.2 Swift 5.2 |
Xcode 11.5 | macOS Catalina 10.15.2 | iOS 13.5 macOS 10.15.4 tvOS 13.4 watchOS 6.2 DriverKit 19.0 | x86_64 armv7 armv7s arm64 arm64e | iOS 8.0-13.5 iPadOS 13.0-13.5 macOS 10.6-10.15.4 tvOS 9.0-13.4 watchOS 2.0-6.2 | iOS 10.3.1-13.5 tvOS 10.2-13.4 watchOS 3.2-6.2 | Swift 4 Swift 4.2 Swift 5.2 |
Xcode 11.4.x | macOS Catalina 10.15.2 | iOS 13.4 macOS 10.15.4 tvOS 13.4 watchOS 6.2 DriverKit 19.0 | x86_64 armv7 armv7s arm64 arm64e | iOS 8.0-13.4.x iPadOS 13.0-13.4.x macOS 10.6-10.15.4 tvOS 9.0-13.4 watchOS 2.0-6.2 | iOS 10.3.1-13.4.x tvOS 10.2-13.4 watchOS 3.2-6.2 | Swift 4 Swift 4.2 Swift 5.2 |
Xcode 11.3.x | macOS Mojave 10.14.4 | iOS 13.3 macOS 10.15.2 tvOS 13.3 watchOS 6.1.1 DriverKit 19.0 | x86_64 armv7 armv7s arm64 arm64e | iOS 8.0-13.3 iPadOS 13.0-13.3 macOS 10.6-10.15.2 tvOS 9.0-13.3 watchOS 2.0-6.1.1 | iOS 10.3.1-13.3 tvOS 10.2-13.3 watchOS 3.2-6.1.1 | Swift 4 Swift 4.2 Swift 5.1 |
Xcode 11.2.x | macOS Mojave 10.14.4 | iOS 13.2 macOS 10.15.1 tvOS 13.2 watchOS 6.1 DriverKit 19.0 | x86_64 armv7 armv7s arm64 arm64e | iOS 8.0-13.2.x iPadOS 13.0-13.2.x macOS 10.6-10.15.1 tvOS 9.0-13.2 watchOS 2.0-6.1 | iOS 10.3.1-13.2.x tvOS 10.2-13.2 watchOS 3.2-6.1 | Swift 4 Swift 4.2 Swift 5.1 |
Xcode 11.1 | macOS Mojave 10.14.4 | iOS 13.1 macOS 10.15 tvOS 13 watchOS 6.0 DriverKit 19.0 | x86_64 armv7 armv7s arm64 arm64e | iOS 8.0-13.1 iPadOS 13.0-13.1 macOS 10.6-10.15 tvOS 9.0-13.0 watchOS 2.0-6.0 | iOS 10.3.1-13.1 tvOS 10.2-13.0 watchOS 3.2-6.0 | Swift 4 Swift 4.2 Swift 5.1 |
Xcode 11 | macOS Mojave 10.14.4 | iOS 13 macOS 10.15 tvOS 13 watchOS 6.0 DriverKit 19.0 | x86_64 armv7 armv7s arm64 arm64e | iOS 8.0-13.0 iPadOS 13.0-13.0 macOS 10.6-10.15 tvOS 9.0-13.0 watchOS 2.0-6.0 | iOS 10.3.1-13.0 tvOS 10.2-13.0 watchOS 3.2-6.0 | Swift 4 Swift 4.2 Swift 5.1 |
Xcode 10.3 | macOS Mojave 10.14.3 | iOS 12.4 macOS 10.14.6 tvOS 12.4 watchOS 5.3 | x86_64 armv7 armv7s arm64 arm64e | iOS 8.0-12.4 macOS 10.6-10.14.6 tvOS 9.0-12.4 watchOS 2.0-5.3 | iOS 10.3.1-12.4 tvOS 10.2-12.4 watchOS 3.2-5.3 | Swift 4 Swift 4.2 Swift 5 |
Xcode 10.2x | macOS Mojave 10.14.3 | iOS 12.2 macOS 10.14.4 tvOS 12.2 watchOS 5.2 | x86_64 armv7 armv7s arm64 arm64e | iOS 8.0-12.2 macOS 10.6-10.14.4 tvOS 9.0-12.2 watchOS 2.0-5.2 | iOS 8.1-12.2 tvOS 9.0-12.2 watchOS 2.0-5.2 | Swift 4 Swift 4.2 Swift 5 |
Legend
Minimum OS Required: The version of macOS required to install this version of Xcode.
SDK: The version of SDKs included in this version of Xcode.
Architecture: The architectures supported for development by this version of Xcode.
OS: The iOS, iPadOS, macOS, tvOS, and watchOS versions supported by this version of Xcode for developing, installing, and debugging applications.
Simulator: Versions of iOS, tvOS, and watchOS simulators supported for development by this version of Xcode.
Swift: Version of Swift supported for development by this version of Xcode.
Providing feedback and reporting bugs
Your feedback goes a long way towards making Xcode even better. With Feedback Assistant, you can report issues or request enhancements to APIs and tools. Include detailed information about issues, including the system and developer tools version information, and any relevant crash logs or console messages. To ask questions and find answers by Apple engineers and other developers, visit the Apple Developer Forums.
Invalid private key and certificate pairing
If you received an error message saying, 'Xcode could not find a valid private-key/certificate pair for this profile in your keychain.' This error message indicates that the Keychain Access application on your Mac is missing either the public or private key for the certificate you are using to sign your app.
This often happens when you are trying to sign and build your app from a different Mac than the one you originally used to request your code signing certificate. It can also happen if your certificate has expired or has been revoked. Ensure that your app’s provisioning profile contains a valid code signing certificate, and that the Keychain Access application on your Mac contains that certificate, the private key originally used to generate that certificate, and the WWDR Intermediate Certificate.
For instructions on how to resolve this and other code signing errors, review the Code Signing Support page.
Apple security updates
For information on the security content of Xcode updates, visit the Apple security updates page.
Apple is committed to providing great experiences that respect customer privacy and security. When joining the Apple Developer Program and accepting the Program License Agreement, developers agree to ensure that their software is safe and secure for their users. They also agree to cooperate with Apple systems, such as the notary service, designed to help protect users from malware (e.g., viruses, trojan horses, backdoors, ransomware, spyware) or malicious, suspicious, or harmful code or components when distributing Developer ID–signed Mac software outside the Mac App Store. The examples below are provided to help clarify some of the behavior that is not permitted for Mac software distributed in this way.
Examples of Suspicious Software
Mac Os Support List
Software with the following qualities may qualify as malware or contain malicious, suspicious, or harmful code or components:
Deceptive.
Online Mac Support
- Misrepresents the software’s functionality or misleads the user about the purpose of the software (e.g., the software claims to protect users from malware but has no functionality to do so).
- Misleads the user about the software’s developer or the origin of the software (e.g., displays a user interface that mimics macOS or another app).
- Installs additional software components on a user’s system other than those clearly described in advertising, user interface, or documentation.
- Makes misleading claims about the software or the status of a user’s system (e.g., “Your Mac is infected”).
- Consumes system resources like disk space, network bandwidth, or CPU or GPU cycles (e.g., a hidden cryptographic currency miner) without the user’s consent.
Difficult or costly to remove.
Outlook For Mac Support Tools
- Actively or passively frustrates user attempts to close or remove the software (e.g., provides false warnings regarding effects of closing or removing the software).
- Charges fees to a user to remove the software.
- Displays ads to a user that are difficult to close or that are displayed outside the software itself.
Degrades security or privacy.
- Enables any party to control the system without the user’s consent.
- Enables distribution of other malicious, suspicious, or harmful software.
- Reconfigures the system or other software without user transparency or consent, including but not limited to: changing DNS settings, creating network proxies or firewall rules, changing browser settings, installing custom CA certificates, or intercepting, redirecting, or modifying the user’s web browsing or any other network connections.
- Collects or transmits private or sensitive data without a user’s knowledge or in a manner contrary to the stated purpose of the software (e.g., sends user documents to a server, monitors keystrokes, tracks a user’s browsing without prior consent).
- Controls or interferes with a user’s experience outside of the use of the software, such as by forcing a user to approve a system dialog, change a setting or by prohibiting a user from accessing other software.
- Directs users to lower the security of their system.
Additional Details
Seagate Support For Mac Users
If you believe you have encountered malicious, suspicious, or harmful software for Apple platforms, please notify Product Security.