Provisioning Profile
ELI5 - The Vibe Check
A provisioning profile is Apple's permission slip that ties together your app, your signing certificate, and the specific devices or App Store the build is allowed to run on. Forget to update it after adding a new push notification capability, and your build silently fails to install with an error that explains nothing useful. It's the single most cursed file in iOS development.
Real Talk
A provisioning profile is an Apple-issued file that bundles a development or distribution certificate, an app's bundle identifier, its enabled capabilities and entitlements, and, for development or ad hoc builds, a list of authorized device UDIDs. Xcode uses it to determine whether a build is allowed to run on a given device or be submitted to the App Store, and it must be regenerated whenever capabilities or authorized devices change.
When You'll Hear This
"The build failed because the provisioning profile didn't have Push Notifications enabled after we added that capability." / "Xcode's automatic signing regenerates the provisioning profile for you, but it still breaks in CI without the right certificates."
Related Terms
App Signing
App signing is like putting your digital signature on your app to prove it's really from you and hasn't been tampered with.
Certificate
A certificate is a digital ID card for a website, signed by a trusted authority.
Code Signing
Code signing proves that your code is genuinely from you and nobody tampered with it between your computer and the user's device.
TestFlight
TestFlight is Apple's way of letting you share beta versions of your app with testers before it goes live.