Hello developers !
My team and I are currently trying to migrate to the new Xcode 16 version.
We encounter a blocker problem with the new Xcode when submitting a new build on TestFlight.
The problem :
ITMS-90338: Non-public API usage - The app references non-public selectors in AccorHotelsApp: setSupportedInterfaceOrientations:.
We tried several things to solve the issue :
- remove all the frameworks that are not built by us ; the issue is still present
- remove the code related to this API in our base code and the frameworks ; the issue is fixed
- remove only the code related to this API in our base code ; the issue is fixed
This indicates that the problem is the code related to this API. The code removed :
override public var supportedInterfaceOrientations: UIInterfaceOrientationMask {
get { configuration.orientation }
set { _ = newValue }
}
This code is located in our local SPM. It's used to handle orientation of our app depending on specifics configuration given as a parameter.
Why Xcode 16 is detecting this API as a private one and consider this as an issue ? Is there a specific configuration we need to do in the local SPM package ?
We are investigating on our side if we can find an alternative solution by changing this code, but this does not seem a bad usage as described in Apple documentation.
Thank you for your help, Regards. RIVIERE Nicolas