If you want to run your iOS apps on your iPhone or iPad, you'll need a free Apple Developer Account. Since Xcode 7, you can use your Apple ID to run and install your own apps on iPhone and iPad. You'll still need a paid Developer Program membership to publish apps in the App Store, and to use App Store Connect.
Build your future. Whether you're just entering the workforce or you‘re an experienced developer or entrepreneur, take advantage of free resources to gain skills that help you succeed in Apple's growing app economy, which provides millions of jobs in technology across the globe. The Xcode suite includes most of Apple's developer documentation, and built-in Interface Builder, an application used to construct graphical user interfaces. Up to Xcode 4.1, the Xcode suite included a modified version of the GNU Compiler Collection.
In this article, we'll discuss:
- How to get a free Developer Account with your Apple ID
- Connecting Xcode on your Mac to your new Developer Account
- Running ('sideloading') your apps on your iPhone or iPad
- How to enroll in the paid Apple Developer Program
Let's get to it!
Create an Apple Developer Account
Let's get you set up with a free account, which will allow you to run your own iOS apps on iPhone and iPad – with zero costs.
First, go to developer.apple.com and click Account.
You're now asked to log into the Member Center. You have two options:
- Log in with an existing Apple ID
- Create a new Apple ID
If you're already using Apple's services, chances are you already have an Apple ID. It's OK to use this Apple ID to sign up for a Developer Account. If you want to keep things separated, then opt to create a new Apple ID.
Once you've successfully logged in, you're asked to accept the Apple Developer Agreement. Simply check the boxes and continue to the next page.
That's it! Your Apple ID now gives you access to the free Apple Developer Account. With it, you can run your own iPhone and iPad apps on your devices. This is done in Xcode, which we'll cover in the next step.
Keep in mind that, to publish apps in the App Store, you still need that $99/year paid Apple Developer account. You also can't download iOS, macOS, etc. betas with the free account, which is a bummer.
Apple's Developer portal, at developer.apple.com, is a pretty cool place to hang out! You've got access to WWDC videos, the Human Interface Guidelines, documentation, helpful tips for app promotion, and much more. I wrote an in-depth guide about making the most of Apple's docs, here: How To Use Apple's Developer Documentation For Fun And Profit
Sign into Xcode with Your Dev Account
Alright, the next step is enabling your developer account in Xcode. Here's how:
- Start Xcode on your Mac
- Choose the Xcode → Preferences menu and navigate to the Account pane
- Click the
+
-button in the bottom-left corner and choose Apple ID - Log in with your Apple ID email address and password (Keep a 2FA device handy! You do use 2FA, right?)
You now have access to your Developer Account in Xcode! Easy, right? The developer account you added is called 'Personal Team', which should show up in the list on the right.
A few interesting notes:
- You can add multiple Developer Accounts under one Apple ID. For example, if you choose to add a client's or employer's paid developer account, you can do so. (You can also add multiple Apple IDs to Xcode.)
- If you've signed into iCloud prior to starting Xcode, and added the free dev account to your iCloud Apple ID, it should automatically show up under Accounts. (This isn't always the case though!)
Sideload/Run Apps on Your iPhone
The next step is running your own iOS app on your iPhone and iPad! First, make sure your iPhone (or iPad) is connected to your Mac via USB. When your iPhone prompts you to confirm connecting to your Mac, tap Trust.
Then, in Xcode, choose the Window → Devices and Simulators menu. Select your iPhone from the list, and then click the Enable Device for Development button. (Depending on the context, this may not be a necessary step.) It's also smart to enable the Connect via network option, which lets you debug apps on your iPhone without connecting via USB.
The next step, which isn't always required, is changing the Signing & Capabilities setting of the project you're about to run. You can do this by navigating to the project settings, then select the project name below Targets, and go to the Signing & Capabilities tab. Click the checkbox for Automatically manage signing, and then select your Personal Team from the dropdown list.
If everything went according to plan (does it ever!?), you should now be able to select your iPhone in the top-left corner of Xcode. This is the Build Target setting, and with it you can select the device (or simulator) your app needs to run on.
You can now click the Play button or hit Command + R to install and run the app on your iPhone!
Running your app on your iPhone is finicky at times. Did you get an error? Copy-and-paste it into Google, and check out some of the first StackOverflow questions and answers. Miraculously, restarting Xcode helps 8 out 10 times… Have you tried turning it off and on again!?
Enroll in the Apple Developer Program
If you're serious about publishing an app in the App Store, you'll need to get a paid Apple Developer account. The standard Apple Developer Program license costs $99 a year, which renews annually. You'll need the license to keep your app in the App Store, too.
With this account, you're allowed to publish live apps in the App Store, access members-only resources, SDKs and betas, and beta test your app via TestFlight. It'll also give you access to App Store Connect (formerly called iTunes Connect), with which you can manage your production apps.
You've got a few options to choose from:
- You can choose between a Personal or Organization account. The biggest difference is how your app appears in the App Store. A Personal account will show your personal name, whereas a Organization account shows your company name. You can only sign up for a company account if you've registered as a company, i.e. incorporated, a joint venture or sole proprietorship.
- You can also sign up for the Enterprise Program, which allows you to distribute private apps within your company. You'll need at least 100 employees to be eligible; the rules are quite strict. However, it's an option to keep in mind if you're going to build an in-house app for a client or employer. Similarly, the Apple Volume Purchase Program and the B2B App Store are options to keep in mind for later.
If you want to register as a company, you'll need a DUNS number. This is essentially an outside verification that you've registered as a company. Acquiring a DUNS number is often free and reasonably quick.
You can get started with enrolling in the Developer account here.
Further Reading
Awesome! You now have everything you need to build and run your own apps on your iPhone or iPad. And it's (almost) all free! Here's the gist of what we discussed:
- You can run your own iOS apps on your iPhone if you've got an Apple ID, and enable it in Xcode
- You'll need a $99/year Apple Developer Program license if you want to publish your apps in the App Store, and get a bunch of resources
Want to learn more? Check out these resources:
Xcode es un conjunto completo de herramientas para desarrolladores que permite crear apps para Mac, iPhone, iPad, Apple Watch y Apple TV. Xcode combina las funcionalidades de diseño de la interfaz de usuario, programación, prueba, depuración y envío a App Store en un flujo de trabajo unificado.
Descargar y actualizar Xcode
La versión actual de Xcode está disponible para descargar de forma gratuita en Mac App Store (inglés). Mac App Store te notificará cuando haya una actualización disponible, o bien puedes optar por que macOS actualice automáticamente cuando haya una actualización disponible.
La versión beta más reciente y las versiones anteriores de Xcode se pueden descargar en la página Descargas (inglés). Para descargar Xcode, solo debes iniciar sesión con tu Apple ID. No se necesita una membresía de Apple Developer Program.
Uso de Xcode
Obtén instrucciones paso a paso sobre cómo usar Xcode para crear, probar y enviar apps a App Store.
Envío de apps a App Store mediante Xcode
Xcode For Ipad
Si eres miembro de Apple Developer Program, Xcode proporciona un flujo de trabajo integrado para preparar y enviar las apps a App Store. Debes usar la versión más reciente de Xcode disponible en Mac App Store (inglés) para enviar las apps o, cuando esté disponible, la versión GM más reciente de la página Descargas (inglés).
No envíes apps creadas con la versión beta del software, ya que las versiones beta de Xcode, los sistemas operativos y los SDK solo deben utilizarse para desarrollar y probar apps.
Obtener información sobre los cambios de Xcode
Para obtener información sobre las características y funcionalidades más recientes de Xcode, consulta Novedades de Xcode (inglés). Para obtener detalles sobre las actualizaciones en las últimas versiones lanzadas, incluida cada versión beta, consulta Notas de la versión de Xcode (inglés).
Requisitos mínimos y SDK compatibles
Versión de Xcode | SO mínimo requerido | SDK | Arquitectura | SO | Simulador | Swift |
---|---|---|---|---|---|---|
Xcode 12.2 beta | macOS Catalina 10.15.4 (Mac con Intel) macOS Big Sur 11.0 (Mac con Apple Silicon) | 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 (Mac con Intel) macOS Big Sur 11.0 (Mac con Apple Silicon) | 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 (Mac con Intel) | 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 |
Leyenda
SO mínimo requerido: La versión de macOS requerida para instalar esta versión de Xcode.
SDK: La versión de SDK incluidos en esta versión de Xcode.
Arquitectura: Las arquitecturas compatibles con esta versión de Xcode para el desarrollo.
SO: Las versiones de iOS, iPadOS, macOS, tvOS y watchOS compatibles con esta versión de Xcode para desarrollar, instalar y depurar apps.
Simulador: Las versiones de simuladores de iOS, tvOS y watchOS compatibles con esta versión de Xcode para el desarrollo.
Swift: La versión de Swift compatible con esta versión de Xcode para el desarrollo.
Brindar comentarios y reportar errores
Tus comentarios son muy útiles para que Xcode sea aún mejor. Con Feedback Assistant (inglés), puedes informar problemas o solicitar mejoras en las API y las herramientas. Incluye información detallada sobre los problemas, como información de la versión del sistema y de las herramientas para desarrolladores, y los registros de bloqueos o mensajes de la consola relevantes. Para hacer preguntas y buscar respuestas de los ingenieros de Apple y otros desarrolladores, visita Apple Developer Forums (inglés).
Enlace no válido entre clave privada y certificado
Si recibiste el mensaje de error 'Xcode could not find a valid private-key/certificate pair for this profile in your keychain' (Xcode no pudo encontrar un enlace válido entre clave privada y certificado para este perfil en tu llavero), significa que la app Acceso a Llaveros de tu Mac no tiene la clave pública o privada correspondiente al certificado que estás usando para firmar tu app.
Esto suele suceder cuando intentas iniciar sesión y crear tu app desde una Mac diferente a la que originalmente usaste para solicitar tu certificado de firma de código. También puede suceder si tu certificado venció o se revocó. Asegúrate de que el perfil de suministro de tu app contenga un certificado de firma de código válido y de que la app Acceso a Llaveros de tu Mac tenga ese certificado, la clave privada que originalmente usaste para generar ese certificado y el certificado intermedio de WWDR.
Para obtener instrucciones sobre cómo resolver este y otros errores de firma con código, consulta la página de soporte de Firma con código.
Actualizaciones de seguridad de Apple
Xcode For Web Development
Para obtener información sobre el contenido de seguridad de las actualizaciones de Xcode, visita la página de actualizaciones de seguridad de Apple.