Подтвердить что ты не робот

IPhone: Открыть URL-адрес программно

Я новичок в iPhone. Я хочу открыть URL-адрес в своем приложении. Как я могу выполнить эту задачу? Пожалуйста, предложите мне и укажите полезную ссылку.

4b9b3361

Ответ 1

Обновление (2016): Лучший способ сделать это в наши дни - создать экземпляр и представить SFSafariViewController. Это дает пользователю безопасность и скорость Safari и доступ к любым файлам cookie или функциям Safari, которые они, возможно, уже установили, не покидая ваше приложение.

Если вы хотите открыть URL-адрес в Safari (и выйти из приложения), вы можете использовать метод openURL для UIApplication

Если вы предпочитаете, чтобы он обрабатывался внутри вашего приложения, используйте WKWebView.

Ответ 2

По-видимому, ссылка, приведенная выше, устарела. Ниже приведена ссылка для ссылки UIApplication.

Быстрый и простой фрагмент кода:

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

// Swift
UIApplication.shared.open(URL(string: "http://www.google.com")!, options: [:], completionHandler: nil)

Ответ 3

Если вы хотите открыть и просто получить данные из URL-адреса, вы можете использовать NSString:

NSString *ans = [NSString stringWithContentsOfURL:url];

Если вы пытаетесь получить XML из URL-адреса, вы можете напрямую использовать NSXMLParser:

NSURL *url = [[NSURL alloc] initWithString:urlstr];
NSXMLParser *parser = [[NSXMLParser alloc] initWithContentsOfURL:url];
// parse here
[parser release];
[url release];

С другой стороны, если, открыв, вы имеете в виду, откройте URl во встроенном браузере, вы можете использовать класс UIWebView.

Ответ 4

if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"https://medium.com/the-traveled-ios-developers-guide/swift-3-feature-highlight-c38f94359731#.83akhtihk"]]) {
                [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"https://medium.com/the-traveled-ios-developers-guide/swift-3-feature-highlight-c38f94359731#.83akhtihk"]];
            }
            else{
                [SVProgressHUD showErrorWithStatus:@"Please enable Safari from restrictions to open this link"];
            }