ITMS-90338: Non-public API usage automatic refuse

  • 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.

  • I'm also seeing this issue as of today without adding any new packages.

  • ITMS-90338: Non-public API usage - The app references non-public selectors in NNNN estimatedProgress, initWithFrame:configuration:, initWithURL:configuration:, initWithURL:entersReaderIfAvailable:, isMainFrame, ...etc

    Found this https://news.ycombinator.com/item?id=31648690 I think someone introduced a lookup issue in apples code validator.

    Let's hope this is resolved pronto. Well at least Android is working (that was a passive aggressive dig).;

Apple Recommended

  • Thanks a lot. ^^

  • it worked, thanks!

  • Thanks for the fix. I just uploaded a new build and it works!

Replies

Still here: (React native)

ITMS-90338: Non-public API usage - The app references non-public selectors in App: _isKeyDown, _modifiedInput, _modifierFlags, handleNotification:, onSuccess:. If method names in your source code match the private Apple APIs listed above, altering your method names will help prevent this app from being flagged in future submissions. In addition, note that one or more of the above APIs may be located in a static library that was included with your app. If so, they must be removed.

  • I had the same ones flagged too. I opened an issue with Apple and they told me to change them and when I did it worked. I didn't need to change onSuccess. The other ones were all in the React Native package for me. Here is an issue on their github showing how someone proposed they modify those selectors, so I just followed what they did: https://github.com/facebook/react-native/pull/33153. Hope that helps, good luck.

Add a Comment

Suddenly having same/similar issue with new builds, today, Sept 22 2022:

The app references non-public selectors in authenticationDidCompleteWithError:

App has previously uploaded many versions with no issues, no new changes even remotely connected to any authentication, and in fact my app doesn't even use any such method so must be in a third-party library (RealmCocoa or Google Firebase is my guess).

Make sure that you are distributing your app using the release scheme instead of the debug scheme.

To configure your app to be built using the Release scheme, go to Product → Scheme → Edit Scheme. Then set the Build Configuration dropdown to Release.

  • sadly I tried for my case, did not work for me.

    (react-native app)

  • neither, me (react-native app) 

Add a Comment

Hi there everyone. I am just a regular old general public kinda person who somehow ended up here and would greatly appreciate information on how to get into the Secure Enclave and how to absolutely **** up the boot that's been added without my consent. Thanks my friends!

Finally, I used the production build to upload the IPA to testflight and its success in the expo project.

My previous using eas build --profile development --platform ios and it show above error and now I am using the expo build:ios --release-channel production and it success upload to test flight

Had the same issue yesterday, had been uploading develop app for 2 years! and this is the first time that I get this. It a random backend issue? Or do we need to change something?

Hi, we are facing the same problem, however in the Apple Store Connect email it does not show what would be the point to correct.

Hi we have similar issue with our VisionOS build using Unity, and XCode 15 beta 8

App Store Connect

Dear Developer,

We identified one or more issues with a recent delivery for your app, "Skatrix Vision demo" 0.1 (6). Please correct the following issues, then upload again.

ITMS-90338: Non-public API usage - The app references non-public symbols in Frameworks/UnityFramework.framework/UnityFramework: _ar_skeleton_get_skeleton_root_transform_for_joint. If method names in your source code match the private Apple APIs listed above, altering your method names will help prevent this app from being flagged in future submissions. In addition, note that one or more of the above APIs may be located in a static library that was included with your app. If so, they must be removed.

we can't remove this code because it's inside Unity package and it's needed to build the app, please let us know how can we fix that