TestFlight and AppStore

If I get an app accepted into TestFlight on the app store does that mean I have passed review? I somehow don’t believe it.

Its more a quick check for malware like notarization, but not a app review…

I thought it was a bit quick and I’d be lucky to get no review warnings on a first attempt. :slight_smile:

It would appear that Xojo apps have an issue if you want to do an external beta on TestFlight, as it thinks you are not using a production version of Xcode. It would appear that there needs to be an Info.plist entry to indicate which version of the macOS SDK is being used. I’m testing some manual entries now and will report back.

OK, on further inspection two items are missing from the bundle when viewed in the in App Store Connect.

One was the “Build SDK”. It is set by adding a string value to the Info.plist file “DTSDKBuild”. I’ve used a value of “23E200”, which is the SDK for 10.14. The second missing element seems to be “Build Platform”. I’m still tracking down the entry that works with.

1 Like

So it turns out that all you need is the “Build SDK” part. Which you can get by adding a String value to the Info.plist file. However, the API value must be new enough. I tried “23E208”, the latest and it is now working for External testers in TestFlight.

To also answer my initial question. Thomas is correct, their review email, which eventually arrived, says:

As a reminder, approval for testing through TestFlight does not constitute approval for customer distribution. Apps submitted for customer distribution will undergo a full review to make sure they follow the App Store Review Guidelines.

3 Likes

Thanks for sharing this information. I had contacted Apple about this in the past and received a long list of possibilities. No one from the App Store team was willing to tell me exactly why their hideous system was refusing TestFlight.

There is one thing that may be of a concern, the Info.plist is only once place where SDK information is stored. As a lot of Apple’s processes nowadays are mysterious black boxes, I would be very concerned about providing conflicting SDK Information, as this may lead to inconsistent and potentially fatal behavior.

In a perfect world, you’d file a feedback and Xojo would auto include this information for the SDK that they actually build their framework and the runtime against. But considering I was trying to get them to include some basic version information in their framework and got nowhere… Would be nice if Xojo could surprise me.

2 Likes

I find it difficult to believe that this tag is used in any sort of practical way by macOS to actually link code to the API it calls. Especially since a complete absence of a value results in perfectly working code. I could be completely wrong in that but I suspect it is nearly used by the AppStore to change that you are not using some sort of beta version of the API to run your TestFlight applications.

I also think that Apple being Apple would required the latest API to be used in order to use TestFlight. Especially given that version 23 build 200 was rejected and version 23 build 208 was accepted. 23E208 is the current version for macOS 14.4. I’m assuming 23E200 is for some prior version of macOS 14.x.

I managed to track this setting down with some forum posts from the Election group, who reported the very same issue with their applications. Also worth pointing out is that version 23, without a build number works, up until they release a new beta version of 23, at which point TestFlight thinks you are using the latest and greatest and complains that you are using the beta, which is doesn’t allow.

All of that aside I would be happy to post a feature request for Xojo to add the correct version to the applications it builds for macOS:

Feedback request #76104

Please sign on to this feedback request, if you want this to happen. Clicking the heart here is nice but will not count towards getting this is changed. Click the feedback link and give the request a thumbs up. :slight_smile:

Just fixed the feedback link!

1 Like

Obviously that should have read “Electron group”

Feedback request #76104
Milestone now set for 2024r2, so we’ll have to see what we get. :crossed_fingers:

Have you noticed the reason for the issue being closed? :wink:
Nice work from Xojo!

No, it wasn’t resolved the last time I looked. Well done Xojo.

Anyway… I did see same error message in the past related both with final releases and beta releases of Xcode “dealing” with TestFlight… sometimes it worked, other times… the error message :man_shrugging:

I think if there is no value there it assumes the latest version. If the latest version is a beta version you would see the message. If it was a release version you likely get away without it. The same turned out to be true for having a straight version number without a build number. For example 23 would work until there was a beta release of version 23. 23E208 works so long as build 208 is not a beta version.

I meant, with Xcode-created apps.

Ah, fair enough.