Provisioning Profiles
Profile = certificate + App ID + (optional) devices. Regenerate/download whenever any piece changes.
Types
- Development: Debugging; needs development certificate + App ID + devices.
- Ad Hoc: Share to specific devices; distribution certificate + App ID + devices.
- App Store: For submission; distribution certificate + App ID (no devices).
- In-House (Enterprise): Enterprise distribution; not covered here.
Create Steps
- Choose profile type.
- Select certificate (use newest distribution or development).
- Select App ID (with required capabilities enabled).
- For Development/Ad Hoc, select devices.
- Name and download
.mobileprovision, then import to Xcode/CI.
Maintenance
- Renew profiles after certificate renewal, device changes, or new capabilities.
- If CI uses automatic signing, update certificate/profile in Keychain/env and rebuild.
Common Issues
- “No provisioning profile found” / “Profile doesn’t include the device”: regenerate and include the target device.
- “Entitlements mismatch”: verify App ID capabilities match Xcode settings.
