I’m struggling trying to package my app (From Windows 10, 100% Blueprint based) for testing it on iOS. I have followed every step in the iOS Quick Guide, but with some changes so it allows Ad Hoc Distribution, this is:
- In Apple iOS Developer site, when generating the certificate, selected “App Store and Ad Hoc” instead of “iOS App Development”
- In Apple iOS Developer site, when creating the Provisioning profile, selected “Ad Hoc” instead of “iOS App Development”
- Instead of using iPhonePackager.exe for importing mobile provision and certificate, which seems to be outdated, I directly used the options for it inside Project Settings >> Platforms >> iOS
Everything seems to be working, no errors, provision and certificates marked as valid and in green.(see screenshot)
Then I go to File >> Package Project >> iOS and I immediately get two errors saying Provision not found and Signing key not found. (see screenshot)
What am I doing wrong? I’m completely lost and desperate with this issue, any help would be welcomed!
Many thanks in advance.
I need some more information in order to help you troubleshoot this issue:
- Were you ever able to launch on or package for an iOS device on this (Windows 10) system?
- If not, please try to create and use a standard Development Certification and provision described exactly as described in the iOS Quick Start documentation (to rule out it being a problem specifically with the ad hoc steps)
- Make sure that you are using the correct Bundle ID for your provisions. Since you are in UE4.13 you might want to try the new “Get Game Bundle Id” Blueprint function.
- Try deleting the Saved, Intermediate and Config files: Then open and re-enter the pertinent information in the Project and Editor settings, resave the project and try packaging again.
- Before trying to package again, open the Project log, right-click and select “Clear”
- Try to package again and if it fails, copy all contents of the output log, paste them in a text doc and post here for evaluation.
Many thanks for your reply.
Yes. I’ve been testing my app on iOS during the last two months by doing Launch >> All_iOS_On_MyPC. The issue started when trying to package it instead. Now I’m using a test blank mobile project I created just to be sure nothing in my app is messing around.
I think the BundleID is correct. Not sure if I used correctly the “Get Game Bundle Id” function since it shows nothing. (See screenshot, it works with a plain string variable tho…)
Output log attached
I tested this using the set up in your image and have found that it works when launched on the iOS device but not while playing in editor (I entered a bug for this, although it may be by design.) In any event, if you are able to launch on to an iOS device, be sure the Bundle Identifier shown there A) Matches the Bundle ID under Projects >iOS and B) that the Bundle Identifier matches the Bundle ID you entered for your Certification and Provisions.
To check this, log into your Apple Developer account and look at what was entered as the Bundle ID for the specific certification and provision you have shown in the first image above.
From the Log:
Searching for mobile provisions that match the game ‘DistroTest’ with CFBundleIdentifier = ‘com.distrotest.Profile05’
Bundle name: = com.distrotest.Profile05
Considering provision = Distro_Profile05.mobileprovision
IPP WARNING: Failed to find a valid matching mobile provision, will attempt to use the embedded mobile provision instead if present
LogTemp:Display: IPP ERROR: No Provision or cert found!!
*Make sure provision Distro_Profile05.mobileprovision has com.distrotest.Profile05 designated as the Bundle Identifier
I’m sorry if wasn’t clear, but I cannot either do Launch, I get the same error (Provision and Signing key not found).
I was able to Launch the project using the old Certificate and Provision files, the ones created I created for “Development”, not “Distribution”.
Is there any other way of getting that Game Bundle Id?
Yeah sure, I already did that and they all match. Just wondering if there was some other way of displaying it when “Playing” it, anyway…
Any clue what else could be?
You cannot log into your Apple Developer account and look at what was entered as the Bundle ID for your distribution Certification and Provision?
Just to be clear, the main problem here seems to be the editor can’t find the provisioning file for some reason:
> IPP WARNING: Failed to find a valid matching mobile provision, will attempt to use the embedded mobile provision instead if present
If you google it you’ll see it’s been a pain in the a** since a while.
I’ve seen that forum post a number of times while researching this. It does not contain useful information. The log you posted contains only the portion where it failed. Sometimes we have logging closer to the top of the log that could indicate the source of the failure. Hence, please post the entire output log (Open the Ouput log and press clear before trying to package, then cut and paste and post the entire contents in a text doc) as well as the following logs:
“UE4.log” Located: Engine\Saved\Logs\
or ProjectName.log" Located: ProjectName\Saved\Logs\
The log was already attached days ago, here is the link again:
106985-outputlog.txt (5.47 KB)
From the following link:
iPhone Debugging: How to resolve ‘failed to get the task for process’?
“The ad-hoc profile doesn’t support debugging. You need to debug with a Development profile, and use the Ad-Hoc profile only for distributing non-debuggable copies.”
Does that means that Unreal Engine 4 doesn’t allows you to package the app with an AdHoc (Distribution) profile without debugging it before with a Development profile?
No, you can package the app with an AdHoc Distribution profile without debugging it if you chose to. You simply cannot debug it with that profile. However, if you want to debug your project, you will need to use a Development profile first. -Then use the debugged version to package AdHoc distributable copies of the project (which will not be debugged a second time).
The difference between the two builds is that final packaged build that you create with the AdHoc Distribution profile will be optimized for performance and shipping. This configuration strips out console commands, stats, and profiling tools.
Here is documentation explaining, in depth, the various Build Configurations and their purpose: Build Configurations Reference
Thanks for the information Steve, but I don’t know how that is going to help with my problem.
So, as it stands, can you not debug your project using your Development certification and provision? Then, once your project is sufficiently debugged, can you not package it for shipping using your Ad Hoc Development certification and provision?
How do I debug my app? I’m sorry but I’m new to this.
With your Development certifications and provisions you launch on an iOS device and package in development mode to ensure there are no errors. Once you correct all errors (if any) you will use your Ad Hoc/distribution Certifications and Provisions (with this same, now debugged project) to publish your final shipping package. The only difference between the two, is that the final shipping version undergoes additional steps to optimize performance on the final build.
With your Development certifications and provisions you launch on an iOS device and package in development mode to ensure there are no errors. Once you correct all errors (if any) you will use your Ad Hoc/distribution Certifications and Provisions (with this same, now debugged project) to publish your final, shipping package (now packaging for shipping). The only difference between the two, is that the final shipping version undergoes additional steps to optimize performance on the final build.
I have the same problem had you found the answer.
Thank you (sorry for english)