Xcode 13 upload results in ITMS-90338: Non-public API usage

I am trying to submit an app from Xcode 13 beta 1 to App Store Connect for internal TestFlight testing.

After submission my binary is marked as invalid and I get the following email:

ITMS-90338: Non-public API usage - The app contains or inherits from non-public classes in AppClips/App Clip.app/App Clip: NSConstantArray ,The app contains or inherits from non-public classes in Watch/WatchOS App.app/PlugIns/WatchOS Extension.appex/WatchOS Extension: NSConstantArray, NSConstantIntegerNumber 

Uploading the same app from Xcode 12 results in a successful submission.

Feedback FB9157492.

Anyone else with the same problem?

  • I've got the same problem - "ITMS-90338: Non-public API usage - The app contains or inherits from non-public classes in My_App_Name: NSConstantArray". But I tried building with Xcode 12 and the problem persists - I haven't included any new 3rd party frameworks since the last submission, but it's a huge project with quite a lot of them. At this stage I've also no idea how to track down exactly where this NSConstantArray is being found. Incredibly frustrating. Will watch this space...

Add a Comment