How to create and sign mobile provisioning profiles and test apps on iOS devices
This guide walks you through creating and signing mobile provisioning profiles and installing test apps on iOS devices. It covers the required certificates, device registration, profile creation, and simple deployment steps so you can test builds on physical hardware. Expect to spend about 15–45 minutes if you already have an Apple Developer account.
Step 1: Set up Apple developer account
Sign in to your Apple Developer or Apple ID account at developer.apple.com and confirm you have an active paid membership. This membership is required for device provisioning and lasts 1 year; renewals are handled in your account settings. Having the account ready avoids permission errors later.
[Illustration: screenshot of Apple Developer account dashboard on a laptop screen]
Step 2: Create or export a signing certificate
In the Certificates section, request a new iOS Development certificate or export an existing one from your Mac Keychain as a .p12 file using a secure passphrase. Keep the private key safe; the certificate and private key are required to sign builds and are tied to your team identity. Exporting takes about 1–3 minutes.
[Illustration: macOS Keychain Access window showing certificate and export dialog]
Step 3: Register test devices by UDID
Collect each test device’s UDID (use Finder, iTunes, or a shortcut) and add up to 100 devices per type in the Devices pane of your Developer portal. Enter a recognizable name and the UDID for each device; registration syncs immediately and is required for development provisioning. This step prevents install errors like 'Untrusted Developer.'
[Illustration: iPhone connected to Mac showing device summary with UDID highlighted]
Step 4: Create a development provisioning profile
In Profiles, create a new iOS App Development profile: select your App ID, the development certificate, and the devices you registered, then download the .mobileprovision file. Choose an explicit App ID matching your bundle identifier to enable app services. Creating the profile takes 2–4 minutes.
[Illustration: browser window showing provisioning profile creation form with checkboxes selected]
Step 5: Install certificate and profile on Mac
Double-click the .p12 to import into Keychain (enter the passphrase) and double-click the .mobileprovision to add it to Xcode. Verify the certificate appears in Keychain and Xcode > Preferences > Accounts shows your team and provisioning profiles. Proper installation ensures Xcode can sign builds automatically.
[Illustration: Xcode Preferences Accounts pane with team listed and Keychain Access showing certificate]
Step 6: Configure Xcode project signing settings
Open your Xcode project, select the target, and in Signing set the team, provisioning profile, and certificate; enable automatic signing if preferred. Ensure the bundle identifier exactly matches the App ID used in the profile, and build for a Generic iOS Device or connected device. Correct settings prevent code signing errors at build time.
[Illustration: Xcode project settings Signing & Capabilities tab with team and profile fields]
Step 7: Build, sign, and install on device
Connect the device by USB or enable wireless debugging, choose the device as the run target, then build and run from Xcode; the app will be signed and installed automatically. If prompted on the device, trust the developer in Settings > General > Device Management. Typical install takes 10–30 seconds per app depending on size.
[Illustration: iPhone on a desk receiving an app via Xcode run command with progress bar]
- Use explicit bundle identifiers (com.example.app) to enable capabilities and avoid wildcard pitfalls.
- Keep a plain-text inventory of device UDIDs, certificate names, and profile expiration dates for quick reference.
- Set calendar reminders 30 days before provisioning profiles or certificates expire to avoid broken installs.
- Prefer automatic signing in Xcode when you are the sole developer; switch to manual for CI servers or complex teams.
- Export .p12 backups and store encrypted copies in a secure password manager or company vault.
- Use TestFlight for distributing builds to more than 100 testers or for Beta App Review to simplify distribution
- Never share private keys or .p12 passphrases over unsecured channels; treat them like passwords.
- Provisioning profiles and development certificates expire—apps signed with expired credentials will fail to install until renewed.
- Adding more than the allowed device count requires removing devices at the annual reset or managing device lists carefully.
- Modifying entitlements or bundle identifiers after a profile is created may invalidate the profile and require creating a new one
Was this guide helpful?
More Computers & Electronics guides
How to set up Git, create a repository, and commit code locally
Setting up Git and committing code locally is a small, reliable skill that pays off immediately. In about 10–20 minutes you can install Git, create a repository, and make your first commits so your work is tracked and easy to manage. Follow these clear steps to get a solid local workflow going.
How to migrate email from one provider to another without losing folders or contacts
Migrating email between providers can feel risky, but with a plan you can preserve folders, labels, and contacts while minimizing downtime. This guide walks you through a careful, step-by-step transfer you can complete in a few hours to a couple days depending on mailbox size. Follow the checklist and you’ll keep structure and address data intact.
How to clean dust and replace a laptop fan to fix overheating and throttling
Overheating and CPU/GPU throttling are often caused by dust buildup or a failing fan. This guide walks you through safely cleaning dust and replacing a laptop fan to restore cooling performance and reduce temperature spikes. Read through all steps, gather basic tools, and work in a well-lit, static-safe area.