it-roy-ru.com

Swift - открыть веб-страницу в приложении, кнопка не реагирует

Я создал кнопку, чтобы позвонить из приложения:

   @IBAction func callButton(sender: AnyObject) {
    if (PhoneNumber != ""){
    UIApplication.sharedApplication().openURL(NSURL(string: "telprompt://\(PhoneNumber)")!)
    }
}

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

    @IBAction func openWeb(sender: AnyObject) {
    UIApplication.sharedApplication().openURL(NSURL(string: "www.google.com")!)
}

Но эта кнопка времени не реагирует и ничего не происходит. Где бы я ни искал информацию об открытии веб-страниц в Safari из приложения, код был написан именно так. У вас есть идеи, где проблема?

Заранее спасибо!

17
DCDC

отсутствует схема URL

UIApplication.sharedApplication().openURL(NSURL(string: "http://www.google.com")!)
52
elio.d

Swift 4, безопасно распаковывается по желанию, проверьте, можно ли canOpenURL

if let url = URL(string: "https://www.google.com"),
        UIApplication.shared.canOpenURL(url) {
            UIApplication.shared.open(url, options: [:])
}
8
Aaron Halvorsen

Версия Swift 3

UIApplication.shared.openURL(NSURL(string: "http://google.com")! as URL)
7
MrMins

Обновленная версия Swift 3.0 с iOS 10

let googleURL = NSURL(string: "www.google.com")! as URL
UIApplication.shared.open(googleURL, options: [:], completionHandler: nil)
4
Dustin Spengler

Swift 4.2.1, iOS 10 и выше

UIApplication.shared.open(URL(string: "https://google.com")!, options: [:], completionHandler: nil)
0
J. Doe