从CloudKit下载的URL在按钮推送期间崩溃应用程序

问题描述:

我有从CloudKit下载的Facebook URL,包含在我的facebookurl变量中。 url设置为从facebookurl获取字符串并将其转换为最后一行中打开函数的可行URL。然而,在我运行的应用程序崩溃打开这个按钮,让我这个普通的错误每次尝试: Error message in debug area and in code.从CloudKit下载的URL在按钮推送期间崩溃应用程序

let facebookurl = detail.value(forKey: "Facebook") as? String 
    let url = URL(string: "\(facebookurl)")! 
    UIApplication.shared.open(url, options: [:], completionHandler: nil) 

缺少什么我在这里?

+0

那是一个有效的URL它返回?尝试设置一个断点,然后打印出作为facebookurl返回的内容 - 然后将其复制并粘贴到浏览器中。你也应该明智地为你的URL使用可选的绑定 - 不仅仅是强制解包一个潜在的零值。 – Pierce

+0

不幸的是,该URL是有效的。你能够建议如何可选地绑定我的网址?我不熟悉这个决议。 – Jon

+0

只是基本上在你已经完成的前面添加一个if语句,但是在末尾有括号{if let Facebookurl = detail.value(ForKey:“Facebook”)as!串? {...(process facebookurl)}' – Pierce

感谢皮尔斯和Leo Dabus,

我改变了我的代码就像这样 -

if let facebookurl = detail.value(ForKey: "Facebook") as! String? 
{ 
    let url = URL(string: facebookurl) 
    UIApplication.shared.open(url!, options: [:], completionHandler: nil) 
}