Upon uploading a binary to App Store Connect
, I receive this email from Apple:
ITMS-90338: Non-public API usage - The app references non-public selectors in [PROJECT NAME HERE]: callWithArguments:, estimatedProgress, frameInfo, getVersion, initWithFrame:configuration:, isMainFrame, navigationDelegate, navigationType, setNavigationDelegate:, setProcessPool:, targetFrame, toDouble, toString, userContentController. 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. For further information, visit the Technical Support Information at http://developer.apple.com/support/technical/
However, other than the build number increasing from 1.2
to 1.2.1
, this is the exact same Binary that has been previously uploaded (and is live).
I've checked other questions on StackOverflow, such as this and this, however are typically in reference to third party SDKs.
I am completely baffled as I don't use these method names at all, anywhere in the project...
Is this an issue with iOS 16 having been just released? Thank you.
CodePudding user response:
I'm also experiencing this issue this morning. A simple search of my project reveals many usages of these WKWebView APIs that are clearly public.
I suspect the issue is due to an issue with App Store builds linking against the freshly announced iOS16/Mac updates this morning. Unless those APIs have been outright banned today with no warning (unlikely), I'd put money on it being an Apple issue which they will resolve ASAP.
CodePudding user response:
I have the same issue today, in my case the app had only changes in Javascript compared to previous version. The error message that I got:
The app references non-public selectors in XXXXXX: applicationNameForUserAgent, dataTypes, initWithFrame:configuration:, isMainFrame, navigationType, setProcessPool:, targetFrame, userContentController.
I hope that it will be fixed by Apple, but may be not... My stack:
- Ionic 6
- Angular 8
- Corodova 6.18.1
CodePudding user response:
Can confirm this issue is happening to me as well. non-public selectors in App: __swift_objectForKeyedSubscript:, __swift_setObject:forKeyedSubscript:, appDidEnterBackground, canStart, identityToken, initWithFrame:configuration:, isMainFrame, navigationType, setNavigationDelegate:, setRequestedScopes:, targetFrame, userContentController.
Only have the firebase and stripe sdk's installed.