Unable to launch/package for IOS with Unreal 4.13.2

Using Mac OS Version 10.12.1
Xcode 8.1.

Found quite a few similar thread regarding issues with validating profiles or building to IOS in general and after having tried the different proposed solutions, sadly, nothing has worked for me so far.

I revoked all my certificates, provisioning profiles and deleted the test App IDs I’ve been creating.

I followed the IOS guide and re-created multiple times new development certificates via Apple.developer page.
For reference:
Created an App ID:
App description: test
Wildcard App ID: com.testbuild.*

Created a development provisioning profile for the above App ID:
iOS App Development
AppID: test (#######.com.testbuild.*)
Selected my certificate for development
Selected my devices
Gave it a random name.

Downloaded file. Copied this file in the Build/IOS folder. Also downloaded from Xcode directly.
Deleted all the provisioning profiles in the Library\Mobile Device\Provisioning Profiles folder.
Copied the profile I got from Xcode there, to see if it was making a difference. It didn’t.

In Unreal: Project Settings/IOS
Mobile Provision: No Provisions Found. Please Import a Provision.

I’ve tried to import the file, always get the same error message. When I check the output log, I get the following error:

LogTemp:Display: Running Mono…
LogTemp:Display: Setting up Mono
LogTemp:Display: /Users/Shared/UnrealEngine/4.13/Engine /Users/Shared/UnrealEngine/4.13

LogTemp:Display: Executing iPhonePackager certificates Engine -bundlename com.YourCompany.

LogTemp:Display: CWD: /Users/Shared/UnrealEngine/4.13/Engine/Binaries/DotNET/IOS
LogTemp:Display: Initial Dir: /Users/Shared/UnrealEngine/4.13/Engine
LogTemp:Display: Env CWD: /Users/Shared/UnrealEngine/4.13/Engine/Binaries/DotNET/IOS
LogTemp:Display: BranchPath = MacBook///Users/Shared/UnrealEngine/4.13/Engine/Binaries/DotNET/IOS/../.. --- GameBranchPath = MacBook///Users/Shared/UnrealEngine/4.13/Engine/Binaries/DotNET/IOS/../..
LogTemp:Display: CERTIFICATE-Name:iPhone Developer: -------- (---------),Validity:VALID,StartDate:2017-01-18T16:22:41.0000000-05:00,EndDate:2018-01-18T16:22:41.0000000-05:00

LogTemp:Display: IPP ERROR: Failed to find embedded plist in .mobileprovision file LogTemp:Display: IPP ERROR: Application exception: System.NullReferenceException: Object reference not set to an instance of an object
----------------------------------------

LogTemp:Display:   at iPhonePackager.MobileProvisionParser.ParseFile (System.String Filename) [0x00000] in :0 
LogTemp:Display:   at iPhonePackager.CodeSignatureBuilder.FindProvisions (System.String CFBundleIdentifier) [0x00000] in :0 
LogTemp:Display:   at iPhonePackager.Program.Main (System.String[] args) [0x00000] in :0 
LogTemp:Display: Running Mono...
LogTemp:Display: Setting up Mono
LogTemp:Display: /Users/Shared/UnrealEngine/4.13/Engine /Users/Shared/UnrealEngine/4.13

LogTemp:Display: Executing iPhonePackager Install Engine -project /Users/------/Desktop/-------/-------.uproject -provision /Users/----/Downloads/profile.mobileprovision -bundlename com.YourCompany.[PROJECT_NAME]
----------------------------------------

LogTemp:Display: CWD: /Users/Shared/UnrealEngine/4.13/Engine/Binaries/DotNET/IOS
LogTemp:Display: Initial Dir: /Users/Shared/UnrealEngine/4.13/Engine
LogTemp:Display: Env CWD: /Users/Shared/UnrealEngine/4.13/Engine/Binaries/DotNET/IOS
LogTemp:Display: BranchPath = MacBook///Users/Shared/UnrealEngine/4.13/Engine/Binaries/DotNET/IOS/../.. --- GameBranchPath = MacBook///Users/Shared/UnrealEngine/4.13/Engine/Binaries/DotNET/IOS/../..
LogTemp:Display:  ... '/Users/-----/Downloads/profile.mobileprovision' -> '/Users/-----/Library/MobileDevice/Provisioning Profiles/profile.mobileprovision'
LogTemp:Display:       Copy: /Users/------/Downloads/profile.mobileprovision -> /Users/----/Library/MobileDevice/Provisioning Profiles/profile.mobileprovision, last modified at 1/19/2017 4:54:18 PM
LogTemp:Display: CERTIFICATE-Name:iPhone Developer: -------- (--------),Validity:VALID,StartDate:2017-01-18T16:22:41.0000000-05:00,EndDate:2018-01-18T16:22:41.0000000-05:00

LogTemp:Display: IPP ERROR: Failed to find embedded plist in .mobileprovision file LogTemp:Display: IPP ERROR: Application exception: System.NullReferenceException: Object reference not set to an instance of an object
----------------------------------------

LogTemp:Display:   at iPhonePackager.MobileProvisionParser.ParseFile (System.String Filename) [0x00000] in :0 
LogTemp:Display:   at iPhonePackager.CodeSignatureBuilder.FindProvisions (System.String CFBundleIdentifier) [0x00000] in :0 
LogTemp:Display:   at iPhonePackager.Program.Main (System.String[] args) [0x00000] in :0 
 
----------

My certificate however is correctly populated, but not green while still displaying a "valid" status.
 
When I use the launch function, I get the following weird messages when reaching the Deployment server log. Weird because they refer to odd bundle identifiers that are not set in my profile/cert. 

LogPlayLevel: CommandUtils.Run: Run: mono "/Users/Shared/UnrealEngine/4.13/Engine/Binaries/DotNET/IOS/DeploymentServer.exe" Backup -file "/Users/******/Desktop/*****_4_13_2_dev/Saved/StagedBuilds/IOS/Manifest_UFSFiles_IOS.txt" -file "/Users/******/Desktop/******_4_13_2_dev/Saved/StagedBuilds/IOS/Manifest_NonUFSFiles_IOS.txt" -device 

f802f6dced1849143aa53390c53e5126 6f8d0fe2 -bundle com.YourCompany.******
----------------------------------------

LogPlayLevel: DeploymentServer: [deploy] Created deployment server.
LogPlayLevel: DeploymentServer: [DD] Trying to connect to mobile device running iOS ...
LogPlayLevel: DeploymentServer: [DD] Mobile Device '******???s iPad 3' connected

LogPlayLevel: DeploymentServer: [DD] ... Connected to bundle 'com.YourCompany.******'
----------------------------------------

LogPlayLevel: DeploymentServer: [DD]  ...  ... Finished copying to '/Users/******/Desktop/******_4_13_2_dev/Saved/StagedBuilds/IOS\****** iPad 3_Manifest_UFSFiles_IOS.txt' in 0.20 s
LogPlayLevel: DeploymentServer: [DD]  ...  ... Finished copying to '/Users/******/Desktop/******4_13_2_dev/Saved/StagedBuilds/IOS\******iPad 3_Manifest_NonUFSFiles_IOS.txt' in 0.01 s
LogPlayLevel: DeploymentServer: [DD]
LogPlayLevel: DeploymentServer: Exiting.
LogPlayLevel: CommandUtils.Run: Run: Took 5.207485s to run mono, ExitCode=0
LogPlayLevel: Project.CopyBuildToStagingDirectory: ********** STAGE COMMAND COMPLETED **********
LogPlayLevel: Project.Package: ********** PACKAGE COMMAND STARTED **********
LogPlayLevel: IOSPlatform.Package: Package /Users/******/Desktop/******_4_13_2_dev/******.uproject
LogPlayLevel: Getting IOS Deploy()
LogPlayLevel: Project: /Users/******/Desktop/******_4_13_2_dev/******_IOS.xcworkspace
LogPlayLevel: CommandUtils.Run: Run: mono "/Users/Shared/UnrealEngine/4.13/Engine/Binaries/DotNET/UnrealBuildTool.exe" -XcodeProjectFile -project="/Users/******/Desktop/******_4_13_2_dev/******.uproject" -platforms=IOS -game -nointellisense -IOSdeployonly -ignorejunk -nocreatestub -NoHotReload -ignorejunk
LogPlayLevel: UnrealBuildTool: Discovering modules, targets and source code for project...
LogPlayLevel: UnrealBuildTool: Writing project files... 0%33%67%100%
LogPlayLevel: CommandUtils.Run: Run: Took 34.669411s to run mono, ExitCode=0
LogPlayLevel: CommandUtils.Run: Run: /usr/bin/env UBT_NO_POST_DEPLOY=true /usr/bin/xcrun xcodebuild build -workspace "/Users/******/Desktop/******_4_13_2_dev/******_IOS.xcworkspace" -scheme '******' -configuration "Development" -destination generic/platform=iOS -sdk iphoneos CODE_SIGN_IDENTITY="iPhone Developer"
LogPlayLevel: env: 2017-01-19 17:45:24.588 xcodebuild[58741:439867] [MT] PluginLoading: Required plug-in compatibility UUID DA4FDFD8-C509-4D8B-8B55-84A7B66AE701 for plug-in at path '~/Library/Application Support/Developer/Shared/Xcode/Plug-ins/Unity4XC.xcplugin' not present in DVTPlugInCompatibilityUUIDs
LogPlayLevel: env: Build settings from command line:
LogPlayLevel: env:     CODE_SIGN_IDENTITY = iPhone Developer
LogPlayLevel: env:     SDKROOT = iphoneos10.1
LogPlayLevel: env:
LogPlayLevel: env: 2017-01-19 17:45:31.782 xcodebuild[58741:439867] +dataWithFirstBytes:1024 ofFile:"/Users/Shared/UnrealEngine/4.13/Engine/Config/BaseEditorLayout.ini" failed, errno = 3
LogPlayLevel: env: === BUILD TARGET ****** OF PROJECT ****** WITH CONFIGURATION Development ===
LogPlayLevel: env:

LogPlayLevel: env: Check dependencies LogPlayLevel: env: ****** requires a provisioning profile. Select a provisioning profile for the "Development" build configuration in the project editor. LogPlayLevel: env: Code signing is required for product type 'Application' in SDK 'iOS 10.1' LogPlayLevel: env: LogPlayLevel: env: ** BUILD FAILED **
----------------------------------------

LogPlayLevel: env:
LogPlayLevel: env:
LogPlayLevel: env: The following build commands failed:
LogPlayLevel: env:    Check dependencies
LogPlayLevel: env: (1 failure)
LogPlayLevel: CommandUtils.Run: Run: Took 17.834588s to run env, ExitCode=65

LogPlayLevel: Program.Main: ERROR: AutomationTool terminated with exception: AutomationTool.AutomationException: CodeSign Failed
----------------------------------------

LogPlayLevel:   at IOSPlatform.CodeSign (System.String BaseDirectory, System.String GameName, UnrealBuildTool.FileReference RawProjectPath, UnrealTargetConfiguration TargetConfig, System.String LocalRoot, System.String ProjectName, System.String ProjectDirectory, Boolean IsCode, Boolean Distribution, System.String Provision, System.String Certificate, System
.String SchemeName, System.String SchemeConfiguration) [0x00000] in :0
LogPlayLevel:   at IOSPlatform.Package (AutomationTool.ProjectParams Params, DeploymentContext SC, Int32 WorkingCL) [0x00000] in :0
LogPlayLevel:   at Project.Package (AutomationTool.ProjectParams Params, Int32 WorkingCL) [0x00000] in :0
LogPlayLevel:   at BuildCookRun.DoBuildCookRun (AutomationTool.ProjectParams Params) [0x00000] in :0
LogPlayLevel:   at BuildCookRun.ExecuteBuild () [0x00000] in :0
LogPlayLevel:   at AutomationTool.BuildCommand.Execute () [0x00000] in :0
LogPlayLevel:   at AutomationTool.Automation.Execute (System.Collections.Generic.List`1 CommandsToExecute, Tools.DotNETCommon.CaselessDictionary.CaselessDictionary`1 Commands) [0x00000] in :0
LogPlayLevel:   at AutomationTool.Automation.Process (System.String[] Arguments) [0x00000] in :0
LogPlayLevel:   at AutomationTool.Program.MainProc (System.Object Param) [0x00000] in :0
LogPlayLevel:   at AutomationTool.InternalUtils.RunSingleInstance (System.Func`2 Main, System.Object Param) [0x00000] in :0
LogPlayLevel:   at AutomationTool.Program.Main () [0x00000] in :0
LogPlayLevel: Program.Main: AutomationTool exiting with ExitCode=32 (Error_FailedToCodeSign)
LogPlayLevel: Completed Launch On Stage: Deploy Task, Time: 70.473338
LogPlayLevel: RunUAT ERROR: AutomationTool was unable to run successfully.
PackagingResults:Error: Error Launch failed! Failed to Code Sign

I’ve also tried renaming the Bundle Display Name, Bundle Name and Bundle Identifier to match the ones used when creating the App ID/Profile, to no avail.

I’ve tried: * for both Bundle Display name and Bundle Name, with com.testbuild.* as the Identifier, as well as com.testbuild. , or even com.testbuild.test
Always the same result.

10 hours later, still not working.

Any help will be quite appreciated.

Tried the wildcard App ID - same result.

I did read your posts as well - are you able to launch/build yourself?

Maybe switch to a wildcard App ID in your mobile provision?

I was on 4.14 using this workaround. But it’s not enough to be able to upload to iTunes connect, though.

We actually don’t need to submit to Itunes at the moment - only trying to make an internal build.

Hi chalde,

When you try to import your provisions in UE4, what error message are you getting? -You will need to have your Certificates and Provisions installed correctly in UE4 before trying to deploy to an iOS device for testing.

Your Bundle ID must also match. Make sure to enter this information exactly in the iOS fields in your Project Settings. *Also make sure you set packaging for Development for your Package settings in your Project Settings.

Hi ,

Thanks for the answer.

When I try to import a profile, using the Import Profiles in the Mobile Provision window, I just get the following message:
No Provisions Found. Please Import a Provision.

But in the log, I get the following:

LogTemp:Display: IPP ERROR: Failed to find embedded plist in .mobileprovision file

LogTemp:Display: IPP ERROR: Application exception: System.NullReferenceException: Object reference not set to an instance of an object

All certifates/provisions are, as far as I know, correctly installed. I revoked everything and re-created everything. They are showing in Keychain as valid.

For the Provision Profile, I’ve also tryied to copy it in ~\build\IOS\ - as mentioned in the Quick IOS Guide:
Copy the provisioning profile (.mobileprovision file) you downloaded to your [ProjectDirectory]/Build/iOS directory.

For the record, even when I don’t select any certificates/provisioning profiles, neither my certificates or profiles are showing as “green”.
I get the “valid” status and can select a certificate manually, but there are no provisioning profiles to select.

If you copied your provision file to [ProjectDirectory]/Build/iOS directory then this will be where you navigate to in order to locate the provision file that you need to import through your Project Settings in UE4. This is what the provision file looks like:

Please try importing the provision with the “Import Provision” button (as shown in the first image I posted earlier.)

If it does not work please let me know what error message you receive, if any. Note, you can copy this file to a folder on your desktop, it does not matter where it resides. Typical problems include “Provision doesn’t match the certificate” or that you have an outdated provision of the same name in your Keychain.

Hi ,

Yes. I’ve done exactly as you suggested: used the Import Provision button to import the provision profile I had copied manually in the folder.

The error message, in the output log, is the following (refer to original post for the full log):

LogTemp:Display: IPP ERROR: Failed to find embedded plist in .mobileprovision file

LogTemp:Display: IPP ERROR: Application exception: System.NullReferenceException: Object reference not set to an instance of an object

I’m requesting the error you get when you try to import the provision manually with the Import Provision button in the Project Settings. I gave examples of what you should see (if anything.) Providing this specific information will establish if you have a current, valid, matching provision. If you do not, you will not be able to successfully build for iOS.

This issue must be addressed first before any information in your output logs is relevant.

That’s what he’s been doing.

Hi ,

Yes, I am using Import Provision button in the Project Setting. And I select the development profile that I created/associated with my AppID/Certificate/Devices.

This button:

And the message displayed is: No Provisions Found. Please Import a Provision.

And when I click the button, if I check the Developer Tools - Output Windows, I get the error message I mentioned above.

I have fixed the issue by completely formatting my Mac and reinstalling everything. When clicking the Import Provision button, my profile is finally properly added.
Before I took this drastic approach, everything I tried didn’t work. Reinstalling Unreal itself didn’t help.
So, there was a bug somewhere with my Unreal not being able to see my Provision Profile.

i had the same problem, but formatting my Mac is not an option. can you give me some help?

I am having all sorts of trouble too. I have done everything possible and cant get my Provisions into UE 4.17 on MacOS 10 High . I went into my Xcode 9.2 and all my certificates and provisions are working and syncing with the Developer online account bundle ID. When I go into project settings of Unreal Engine it shows my Developer and Distribution Certificates, but my Provisions are not showing up and I don’t get any green colors on either.

When I try to manually import the adhoc provision for example, the output log says “IPP ERROR: Failed to find plist in .mobileprovisions file” what is this referring too when all certificates and provisions are located in the Project/Build/IOS directory.

I have also scoured the internet and this site and still can’t figure it out. I am still learning and must be missing something in UE 4.17 for this error to occur.

Hopefully someone can assist me here.

Thanks Anthony