Как вернуть SFSafariViewController к работе? - PullRequest
0 голосов
/ 10 февраля 2019

Я хочу открыть URL-адрес в SFSafariViewController, но он говорит, что URL-адрес равен нулю, но не равен нулю.

            let userURL = self.user?.url
            let url = URL(string: "https://www.\(userURL))")
            print(userURL)
            print(url)
            let webVC = SFSafariViewController(url: url!)
            self.present(webVC, animated: true, completion: nil)

Для инструкций печати я получаю следующее:

print (userURL) -> Необязательно ("linkedin.com/in/bob-tarantino-a5778194 /")

print (URL) -> nil

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

Ошибка, вероятно, вызвана использованием переменной "userURL" внутри строки URL-адреса, поскольку она не вызывает никаких ошибок, если URL-адрес содержит нормальную строку, но я не знаю, как ее исправить.

1 Ответ

0 голосов
/ 11 февраля 2019

Поскольку userURL является необязательным, поэтому добавьте проверку nil, как показано ниже, чтобы убедиться, что при объединении используется не дополнительное значение.

guard let nonEmptyURL = userURL else {
    print("Nil userURL")        
}

let url = URL(string: "https://www.\(nonEmptyURL))")

print(userURL)
print(url)
...