ITMS-90338: Non-public API usage automatic refuse

Apple Recommended

Replies

This is a common problem with 3rd party, cross-platform frameworks. Apparently, they are full of private APIs. They may be configured to be enabled only in debug builds. Check your build settings to see if you have debug builds enabled. However, this would mean that the version you submit to the store is radically different than the version you are developing and testing. The problem could be something other than a DEBUG/RELEASE setting.


I'll end with the question I always ask and that has never, to this day, received a response: What does Cordova and Ionic support say when you contact them and ask about this problem? They are the ones giving you code that is being rejected. Why are they never have any responsibility to fix these problems? It's a mystery.

Hello,
I am experiencing the same problem. I only made some basic code change to my App so I can release a new build. Minor changes after I submitted the App, I got an email with these errors also.
Portion of the error msg:
ITMS-90338: Non-public API usage :
 behaviorTypes, convolutionState, discoverAllContactUserInfosWithCompletionHandler:, discoverAllContactsCompletionBlock, discoverUserInfoWithEmailAddress:completionHandler:, discoverUserInfoWithUserRecordID:completionHandler:, discoverUserInfosCompletionBlock, displayContact, drawableResizesAsynchronously, encodeToCommandBuffer:sourceImage:convolutionState:, encodeToCommandBuffer:sourceImage:destinationImage:state:, getProperty:onChannel:responseHandler:, hasProperty:onChannel:responseHandler:, initWithEmailAddresses:userRecordIDs:, initWithMIDIEntity:dataReadyHandler:

This happens to me too only since some hours ago for two of my projects. I submitted one of them this morning successfully already - only made (really) minor changes since then.

Did something change? Maybe it has something to do with iOS 16 being revealed some hours ago? Is anyone experiencing similar problems out of the blue since today?

I have this error in my project today and need to push out a new version today? Anyone have any ideas?

Same here. Just began today (for seamlingly no reason)

Also having the same issue, just started seeing this when I attempted to deploy today. Super frustrating, it's nearly impossible to understand or debug.

I am experiencing the same issue. I was able to push a build to TestFlight this morning and made changes (no new libraries/packages were added) to the code that I wrote. Hope it will get fixed soon.

Same issue using Flutter deployment, got

  • ITMS-90338: Non-public API usage - The app references non-public selectors in Frameworks/webview_flutter.framework/webview_flutter: initWithFrame:configuration:, isMainFrame, setNavigationDelegate:, userContentController.

Tried to deploy to TestFlight but was unable to. Hopefully this gets resolved.

Having the same issue with flutter as Bleik_Urrego

I'm also experiencing the same issue as of only a few hours ago. I was able to successfully submit builds to the app store as of this morning but something changed a few hours ago.

Same issue here, nothing has changed in the app in the area they are complaining about.

Same to me... ITMS-90338: Non-public API usage - The app references non-public selectors in Frameworks/Capacitor.framework/Capacitor: applicationNameForUserAgent, initWithFrame:configuration:, isMainFrame, setNavigationDelegate:, targetFrame.

Any solution for this?? Thx!

Having the same issue with expo (eas-build).

We are also seeing this issue using ionic 5 builds that were working well until this afternoon:

The app references non-public selectors in Payload … id 499c2121-51c7-4b83-8238-5ffaa2ab58a8

Same here, an app that has been releasing updates without issues for months. Even 2 days ago, a testflight version successfully uploaded, but today it just failed after simple (non native) changes.

TMS-90338: Non-public API usage - The app references non-public selectors in zinspector3: estimatedProgress, initWithFrame:configuration:, isMainFrame, isPassthrough, navigationType, onSuccess:, removeValuesForKeys:completion:, setNavigationDelegate:, setProcessPool:, targetFrame, userContentController, websiteDataStore.

Did apple turn on a setting that bans all these out of the blue? Or did someone add a "not" condition in their code and now everything is flagged?