Apple iOS Processing Failing: ITMS-90338: Non-public API usage
We've been using this library for a while within our app and we're just now getting an error thats blocking us from submitting builds to Apple.
ITMS-90338: Non-public API usage - The app references non-public symbols in Frameworks/flutter_web_auth.framework/flutter_web_auth: _SFAuthenticationErrorDomain.
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/
This started this afternoon with no code changes from our end, and at first glance it seems like there are not references to said classes within this plugin, but it's getting flagged anyways
Same issue.
I believe Apple is complaining about the use of https://github.com/LinusU/flutter_web_auth/blob/6034e40e79f5b57f715e92707daca385c3de96d7/ios/Classes/SwiftFlutterWebAuthPlugin.swift#L35
@ish2028 hmm, interesting. Do you think it could be fixed with something like:
if #available(iOS 12, *) {
if case ASWebAuthenticationSessionError.canceledLogin = err {
result(FlutterError(code: "CANCELED", message: "User canceled login", details: nil))
return
}
- }
-
- if #available(iOS 11, *) {
+ } else if #available(iOS 11, *) {
if case SFAuthenticationError.canceledLogin = err {
result(FlutterError(code: "CANCELED", message: "User canceled login", details: nil))
return
}
}
@LinusU potentially, but I was able to get my app approved after submitting another build with changes to my project source code. It was hit or miss with this issue.
Okay, if anyone having troubles could try out the above change, that would be great!