iOS 9 / Xcode 7 problems with TestFlight and iTunes Connect

Since iOS9 and Xcode 7 final were released, apps built with UnrealEngine 4.9.1 cannot be uploaded to iTunesConnect or TestFlight.

The first error you’ll encounter is:


1 package(s) were not uploaded because they had problems:
    /var/folders/5h/w09yr4wx40g2fgnj1cnqxypc0000gn/T/479C7B49-0CB9-4659-A284-5FFD685AF90A/1021672195.itmsp - Error Messages:
        ERROR ITMS-90474: "Invalid Bundle. iPad Multitasking support requires these orientations: 'UIInterfaceOrientationPortrait,UIInterfaceOrientationPortraitUpsideDown,UIInterfaceOrientationLandscapeLeft,UIInterfaceOrientationLandscapeRight'. Found 'UIInterfaceOrientationLandscapeLeft,UIInterfaceOrientationLandscapeRight' in bundle 'com.martiancraft.columbus'."
        ERROR ITMS-90475: "Invalid Bundle. iPad Multitasking support requires launch story board in bundle 'com.martiancraft.columbus'."
        ERROR ITMS-90339: "This bundle is invalid. The Info.plist contains an invalid key 'CFBundleResourceSpecification' in bundle NinjaUE4 [NinjaUE4.app]”

This one is relatively easy to work around. If you add the following to the Additional Plist Items in your Project Settings under iOS:


<key>UIRequiresFullScreen</key>    <string>YES</string>

, it will prevent the server-side checks from doing the startup storyboard and orientation checks, though it will prevent your app from working in the new split screen mode. For games, I doubt that’ll be much of an issue, though.

Unfortunately, getting past that check isn’t the end of it. You’ll still continue to get


 ERROR ITMS-90339: "This bundle is invalid. The Info.plist contains an invalid key 'CFBundleResourceSpecification' in bundle NinjaUE4 [NinjaUE4.app]”

This is an Info.plist key that’s been deprecated for quite some time, but Apple only just now started enforcing it. Searching through the engine code, CFBundleResourceSpecification only exists in one file: CodeSigning.cs which is part of the iPhonePackager. I’ve tried commenting out the code that adds the key, but the generated apps seem to still have the CFBundleResourceSpecification key, so are rejected when you upload to iTC.

If anyone has any ideas about how to resolve this, I’d appreciate hearing them. We haven’t been able to deliver our weekly test builds because of this problem.

Hi ,

I packaged my iOS game in windows, and successfully uploaded into iTunes Connect and it’s currently in testflight

However, the biggest problem I’m having right now to test the GC, since in iOS9, sandbox GC removed.

I did manage to test it and GUI leaderboard shown in iOS8 but not in iOS9, kept saying not logged in.

Do you have any workaround tips on GC @iOS9? Thanks

Edit:

  1. Packaged using 4.9.1, uploaded using Loader on Mac, via Dev tools Xcode 6.4
  2. IAP / Restore works well, only the GC is the problem.

Sorry, we haven’t implemented GameCenter yet in ours, so we haven’t hit that. Yet. :frowning:

Hey, nevermind, my fault. The previous build was packaged with my developer cert. Using the distribution cert on the latest build makes the GC works as intended - viewing leaderboard/submitting score.

I hope you’ll resolve your problem soon!

ERROR ITMS-90339 is definitely still a problem when packaging on a mac and since building for iOS on windows is restricted to blueprint-only projects… the struggle is ever more real.

The same problem. Started when I’ve updated Xcode

I should’ve updated this thread before now. The nice folks at Epic are aware of this issue and actively working on it. They have a fix that’s being tested. No release date for the hotfix other than “soon”.

You can read some of their updates on my AnswerHub posts:

Thanks for reply, !
In my case i don’t need features of IOS 9 so i downgraded Xcode back to 6.4 and everything works norm again.