Skip to content

Search

Documentation

Signing for iOS

Trên trang này

An iOS build must be signed before any device will install it — there is no "open anyway". The signature also has to match a provisioning profile that names your app and, for anything short of an App Store build, the devices allowed to run it.

What you need

An Apple Developer Program membership, an Apple Distribution certificate, and a provisioning profile.

The certificate

Same procedure as macOS, different certificate type:

  1. Keychain Access → Certificate Assistant → Request a Certificate — save the request to disk.
  2. At Certificates, Identifiers & Profiles, create an Apple Distribution certificate with that request.
  3. Install it, then export it from My Certificates as .p12 with its private key and a password.

Apple Distribution covers the App Store and ad-hoc distribution. Apple Development is for running on your own devices from Xcode and is not what a build service wants.

The provisioning profile

  1. Register an App ID matching your game's bundle identifier under Identifiers.
  2. Under Profiles, create a distribution profile for that App ID:
    • App Store to submit to the App Store.
    • Ad Hoc to install on a fixed list of registered devices — you must add each device's UDID first.
  3. Download the .mobileprovision.

A profile expires after a year, and an Ad Hoc profile stops working for any device added after it was made. Both mean regenerating and re-uploading it.

What to put in Forge

Field What
Apple Distribution (.p12) the exported certificate
Certificate password the password you set on export
Provisioning profile the .mobileprovision

The bundle identifier in your profile has to match the one your project exports with. A mismatch is the single most common iOS signing failure, and the error Apple returns does not always say so plainly.

Then notarise

For App Store submission you also need Apple notarisation.