Thursday 14 July 2016

Delphi: External testing is not supported for builds created with beta versions of XCode or iOS

iOS TestFlight and Delphi

Since iOS 8 was released, whenever I built an app to upload to iTunesConnect for Beta testing, it would report an error when I tried to release through TestFlight.

The error I received was:

"External testing is not supported for builds that have been created with a beta version of Xcode or iOS."

Not very helpful. I confirmed that my OS X version wasn't a pre-release, re-installed XCode from the app store and made sure my SDK files were imported from the freshly downloaded XCode.

I checked the generated manifest file to make sure it has the beta entitlement set - which it did, and confirmed that this was flagged the same in the iTC portal against that build.

After a lot of Googling, I couldn't find a solution and gave up - until I recently fell onto an article on the Embarcadero Forums which solved my problem!

The solution:

Your info.plist must contain all the folllowing key/value settings:


<key>DTSDKBuild</key>

<string>13E230</string>

If using Delphi 10.1 Berlin, you can edit the new plist template (info.plist.TemplateiOS.xml) which makes it really easy.

If using earlier versions, you will need to edit the Entitlement.TempliateiOS.xml files in your project folder, making sure not to change the placeholders.

You may also need to add these additional keys if your version of Delphi doesn't already include them (prior to Delphi 10 Seattle):

<key>DTPlatformName</key>
<string>iphoneos</string>
<key>DTPlatformBuild</key>
<string>13A340</string>

Notes and References

The DTSDKBuild key is the internal build number for the version of iOS you're supporting. It must be for a LIVE version! There's a great Wikipedia article giving all the build numbers for each iOS version here:

https://en.wikipedia.org/wiki/IOS_version_history#iOS_9

The DTXCodeBuild key uses build numbers for the relevant version of XCode being used. These can be looked up here:

https://en.wikipedia.org/wiki/Xcode

The original post is here with all the details, and credit to Paul Bedford for offering the solution:

2 comments:

  1. 5 Steps to Keep Your Remote Workers Happy. Virtual employees offer companies a big advantage in today's race to hire qualified talent.

    ReplyDelete