Fix url_launcher for iOS <10 (#407)
diff --git a/packages/url_launcher/ios/Classes/UrlLauncherPlugin.m b/packages/url_launcher/ios/Classes/UrlLauncherPlugin.m index 1a721d2..6814ddf 100644 --- a/packages/url_launcher/ios/Classes/UrlLauncherPlugin.m +++ b/packages/url_launcher/ios/Classes/UrlLauncherPlugin.m
@@ -92,18 +92,30 @@ - (void)launchURL:(NSString *)urlString result:(FlutterResult)result { NSURL *url = [NSURL URLWithString:urlString]; UIApplication *application = [UIApplication sharedApplication]; - [application openURL:url - options:@{} - completionHandler:^(BOOL success) { - if (success) { - result(nil); - } else { - result([FlutterError - errorWithCode:@"Error" - message:[NSString stringWithFormat:@"Error while launching %@", url] - details:nil]); - } - }]; + if ([application respondsToSelector:@selector(openURL:options:completionHandler:)]) { + [application openURL:url + options:@{} + completionHandler:^(BOOL success) { + if (success) { + result(nil); + } else { + result([FlutterError + errorWithCode:@"Error" + message:[NSString stringWithFormat:@"Error while launching %@", url] + details:nil]); + } + }]; + } else { + BOOL success = [application openURL:url]; + if (success) { + result(nil); + } else { + result([FlutterError + errorWithCode:@"Error" + message:[NSString stringWithFormat:@"Error while launching %@", url] + details:nil]); + } + } } - (void)launchURLInVC:(NSString *)urlString result:(FlutterResult)result {