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

Как открыть браузер iPhone по умолчанию?

Я разместил кнопку Facebook в своем приложении для iPhone. Я хочу открыть браузер iPhone по умолчанию, нажав на эту кнопку и загрузив страницу входа в систему Facebook.

Как я могу это достичь?

Спасибо заранее.

4b9b3361

Ответ 1

iOS 10 внедрил новый метод для открытия URL-адреса, как показано ниже:

Swift 3:

let url = URL(string:"http://www.booleanbites.com")
if #available(iOS 10.0, *) {
    UIApplication.shared.open(url!, options: [:], completionHandler: nil)
} else {
    // Fallback on earlier versions
    UIApplication.shared.openURL(url!)
}

Цель C:

NSURL *url = [NSURL URLWithString:@"http://www.booleanbites.com"];

if ([[UIApplication sharedApplication] respondsToSelector:@selector(openURL:options:completionHandler:)]) {
    [[UIApplication sharedApplication] openURL:url options:@{} completionHandler:NULL];
}else{
    // Fallback on earlier versions
    [[UIApplication sharedApplication] openURL:url];
}

Ответ 2

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

Ответ 3

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

Пара вариантов:

  • Интеграция iOS-библиотеки Facebook в ваше приложение. Много кодирования, так как вам нужно написать некоторый код интерфейса для поддержки интеграции. С другой стороны, это ваше приложение, и у вас есть определенный контроль над тем, что происходит и как реагировать на действия пользователя.

https://github.com/facebook/facebook-ios-sdk

  • Вставьте браузер внутри приложения и "откройте браузер" в своем приложении. И снова у вас есть некоторый контроль над тем, что происходит и что с этим делать.

http://developer.apple.com/library/ios/#documentation/uikit/reference/UIWebView_Class/

Дело в том, что это ВАШЕ приложение. Почему вы вынуждаете пользователя отключать ваше приложение и начинаете использовать что-то еще без возможности вернуться?

Ну, вы знаете все детали и на основе тех, которые хотите использовать браузер по умолчанию. Это нормально.

Ответ 4

В Swift

UIApplication.sharedApplication().openURL(NSURL(string:"http://www.facebook.com")!)

В объекте C

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

Ответ 5

Swift: iOS

var url:NSURL? = NSURL(string:webLink!)
UIApplication.sharedApplication().openURL(url!)

Ответ 6

Swift 3:

let url = URL(string: "http://www.example.com")!           
if UIApplication.shared.canOpenURL(url) {
    UIApplication.shared.open(url, options: [:], completionHandler: nil)
}

Если вы хотите добавить completeHandler:

let url = URL(string: "http://www.example.com")!           
if UIApplication.shared.canOpenURL(url) {
    UIApplication.shared.open(url, options: [:], completionHandler: { (success) in
        print("success!") // do what you want
    })
}

Ответ 7

OpenUrl лишен, используйте следующий код.

NSURL *url = [NSURL URLWithString:@"https://google.com"];
[[UIApplication sharedApplication] openURL:url options:@{} completionHandler:nil];