alfioal alfioal - 2 months ago 434
iOS Question

openURL: deprecated in iOS 10

Apple with iOS 10 has deprecated openURL: for openURL:option:completionHandler
If I have:

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"https://www.google.com"]];


How it will become? options:<#(nonnull NSDictionary *)#> in detail

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"https://www.google.com"] options:<#(nonnull NSDictionary<NSString *,id> *)#> completionHandler:nil];


Thanks

Answer

Write like this.

Handle completionHandler

UIApplication *application = [UIApplication sharedApplication];
NSURL *URL = [NSURL URLWithString:@"http://www.google.com"];
[application openURL:URL options:@{} completionHandler:^(BOOL success) {
    if (success) {
         NSLog(@"Opened url");
    }
}];

Without handling completionHandler

[application openURL:URL options:@{} completionHandler:nil];