Added method for receiving Dynamic Links (flutter/engine#5534)

This commit is contained in:
Maurice Parrish 2018-06-15 10:37:47 -07:00 committed by GitHub
parent 3b3631a0d2
commit be469ff641
3 changed files with 36 additions and 1 deletions

View File

@ -128,8 +128,17 @@ FLUTTER_EXPORT
*/
- (BOOL)application:(UIApplication*)application
performFetchWithCompletionHandler:(void (^)(UIBackgroundFetchResult result))completionHandler;
/**
Calls all plugins registered for `UIApplicationDelegate` callbacks in order of registration until some plugin handles
the request.
- Returns: `YES` if any plugin handles the request.
*/
- (BOOL)application:(UIApplication*)application
continueUserActivity:(NSUserActivity*)userActivity
restorationHandler:(void (^)(NSArray*))restorationHandler;
@end
NS_ASSUME_NONNULL_END
#endif // FLUTTER_FLUTTERPLUGINAPPLIFECYCLEDELEGATE_H_
#endif // FLUTTER_FLUTTERPLUGINAPPLIFECYCLEDELEGATE_H_

View File

@ -127,6 +127,14 @@
[_lifeCycleDelegate application:application performFetchWithCompletionHandler:completionHandler];
}
- (BOOL)application:(UIApplication*)application
continueUserActivity:(NSUserActivity*)userActivity
restorationHandler:(void (^)(NSArray*))restorationHandler {
return [_lifeCycleDelegate application:application
continueUserActivity:userActivity
restorationHandler:restorationHandler];
}
#pragma mark - FlutterPluginRegistry methods. All delegating to the rootViewController
- (NSObject<FlutterPluginRegistrar>*)registrarForPlugin:(NSString*)pluginKey {

View File

@ -275,4 +275,22 @@ static BOOL isPowerOfTwo(NSUInteger x) {
}
return NO;
}
- (BOOL)application:(UIApplication*)application
continueUserActivity:(NSUserActivity*)userActivity
restorationHandler:(void (^)(NSArray*))restorationHandler {
for (id<FlutterPlugin> plugin in _pluginDelegates) {
if (!plugin) {
continue;
}
if ([plugin respondsToSelector:_cmd]) {
if ([plugin application:application
continueUserActivity:userActivity
restorationHandler:restorationHandler]) {
return YES;
}
}
}
return NO;
}
@end