我正在将Flutter SDK导入到我的原生iOS项目中。
https://docs.flutter.dev/development/add-to-app/ios/add-flutter-screen?tab=no-engine-vc-uikit-objc-tab
在本指南中,建议我们从FlutterAppDelegate继承
但是在这样做之后,我发现我的源应用程序中的方法委托如下
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray<id<UIUserActivityRestoring>> * _Nullable))restorationHandler
这些方法将不会被调用,这使得我的应用程序不工作时,从safari或任何其他应用程序调用。
不管怎样,要解决这个问题吗?
1条答案
按热度按时间gc0ot86w1#
好吧,我知道答案了:
TLDR:
handleOpenURL
和openURL:sourceApplication:
已弃用,使用openURL:options:
将使事情变得正确第一次
从FlutterAppDelegate继承AppDelegate时,将不会调用这两个过时的API。请改用此API
第二,当代码包含
application:openURL:options:
时可以正常调用并且工作良好