I appreciate that Apple engineer answer, but respectfully I don't think that answers the question.
Yes, openURL has been deprecated since iOS 10, but the OP (and me) aren't using openURL, we're using open, which is NOT deprecated.
Perhaps some clues:
The calls to UIApplication.shared.open() aren't showing a deprecation warning.
Going to the definition of that function takes me to a protocol in FBSDKCoreKit:
/**
Internal type exposed to facilitate transition to Swift.
API Subject to change or removal without warning. Do not use.
@warning INTERNAL - DO NOT USE
*/
NS_SWIFT_NAME(_InternalURLOpener)
@protocol FBSDKInternalURLOpener
- (BOOL)canOpenURL:(NSURL *)url;
- (BOOL)openURL:(NSURL *)url;
- (void) openURL:(NSURL *)url
options:(NSDictionary<UIApplicationOpenExternalURLOptionsKey, id> *)options
completionHandler:(nullable void (^)(BOOL success))completion;
@end
Is FBSDKCoreKit intercepting these calls and sending them to the deprecated openURL version?
A little more googling turns up
https://github.com/facebook/facebook-ios-sdk/issues/2205
So it looks like the Facebook SDK is swizzling ALL calls to UIApplication.open and is instead using the deprecated version which no longer works. 🤦