Advanced iOS PC/Mac Workflow

Intermediate Unreal Engine 4.9
Prerequisite Topics

This page assumes you have prior knowledge of the following topics. Please read them before proceeding.

Choose Your Operating System


Mac OS

This document explains how to set up your development environment for compiling for iOS devices, as well as general workflows for deploying an Unreal project that targets the iOS platform.

Currently, if you are using the launcher version of Unreal Engine, you can only deploy from Windows to iOS for Blueprints-based projects.

Devices / SDK

UE4 runs on IPhone4/IPad2 or later, running iOS 6.0 or above.

To check the compatibility of your device with engine features, please see the iOS Device Compatibility page.

Supported Configurations

See the Recommended Specifications page for detailed information about Windows system requirements.

See the Recommended Specifications page for detailed information about Mac system requirements. Note that to deploy to iOS 7.1, you will need to install XCode 5.1. XCode is available as a free download on the App Store.

Getting Started as an Apple iOS Developer

You will need to sign up for the Apple IOS Developer Program.

  • Individual - If you are working on your own, or will be the only one on a small them that needs Admin access to the IOS account

  • Company - If you are a small team with Company / This allows you to add people to your team, and grant them different kinds of access

When you create your Apple developer account, you will have to do the following (using Apple's instructions):

  • Create a certificate.

  • Create an App ID (it is fine to use * for the user specified portion).

  • Create a provisioning profile.

  • Add your devices.

  • Add all of your devices to the provisioning profile.

For more information, please see the following pages on Apple's site:

To get your certificate on Windows, you will need to use iPhone Packager, located in Engine\Binaries\DotNET\IOS.

There are two tabs in iPhone Packager:

  • New User

  • Already a registered iOS developer

The New User tab contains tools for developers who have not developed iOS applications previously.

Here, you can:

  • Open the Generate Certificate Request Window. The Generate Certificate Request window generates a key pair for signing your iOS applications and a certificate request that is used to generate a certificate on Apple's Developer website.

  • Import a provisioning profile downloaded from Apple's Developer website.

  • Import a development certificate and key pair downloaded from Apple's Developer website.

There is an option to open the Edit Info.plist window, but this is an old option that is no longer needed. Eventually, the functionality of iPhone Packager is going to be integrated into Unreal Editor.

The Already a Registered iOS Developer tab contains tools for developers who have previously developed iOS applications, either using Unreal or through other methods, and already have a development certificate and provisioning profile.

Here, you can:

  • Import a provisioning profile downloaded from Apple's Developer website.

  • Import a development certificate and key pair previously downloaded from Apple's Developer website or a .p12 file exported from Keychain Access.

When installing your certificate, the default options in the wizard should work for most cases.

Now you will need to install the certificate on your Mac, as explained on the web site. You will also need to install that certificate on all the Macs in your studio that will be used to sign applications. There are two ways to do this:

  • With Keychain Access application:

    • Select the login keychain.

    • Select My Certificates in the Category section.

    • Select the new certificate (it will start with "iPhone Developer").

    • Right-click on it, and select Export.

    • Follow the prompts (empty password is fine if you store it securely).

    • Give out the .p12 to others.

    • They can then double-click it, or drag the .p12 in to Keychain Access, to install the certificate in their login keychain.

  • With Xcode:

    • Go to Organizer.

    • Go to Developer Profile on the bottom left.

    • Select Export Developer Profile.

    • Follow the prompts (including entering password - use something you can share with your team).

    • Give out the profile file to others.

    • They can then Import Developer Profile in their Xcode's organizer.

Next, download the .mobileprovision from the Apple site. It will download a file called <ProfileName>.mobileprovision. You should place your .mobileprovision file in one of the following locations:

  • [GameDir]/Build/IOS/[GameName].mobileprovision

  • Engine/Build/IOS/UE4Game.mobileprovision

In the end, the important thing is that everyone has the same "iPhone Developer:" certificate in their login Keychain.

You can share a wildcard mobileprovision file across all your games (until a game needs a non-wildcard profile as explained by Apple). Remember to update the file(s) whenever you add more devices.

Deploying to iOS Devices

You can use the Launch button within Unreal Editor to quickly begin testing your current level on iOS devices. You can also use the File > Package command to cook and package your game for testing on iOS devices. For more information, see the Launching to Devices page.