Fatal error: swift 2.3 when unwrapping value
Fatal error: swift 2.3 when unwrapping value
我正在尝试使用 WCsession 方法将保存的字符串发送到 Apple Watch。但是当我这样做时,我在 swift 2.3 中遇到错误:致命错误:在展开可选值时意外发现 nil !
func Reloadip() {
let ip = nsdefauts.object(forKey: saved)
let requestValues = ["send" : "A" , "IP" : ip as! String ]
print(requestValues)
if(WCSession.isSupported()){
session!.sendMessage(requestValues, replyHandler: nil, errorHandler: nil)
print("sended ip")
}
}
错误发生在 "ip as! String line" 我该如何解决这个问题。 ?
问候奎因
您应该改用更安全的代码
func Reloadip() {
guard let ip = nsdefauts.objectForKey(saved) as? String else {
print("there is no saved ip")
return
}
let requestValues = ["send" : "A" , "IP" : ip]
print(requestValues)
if(WCSession.isSupported()){
session?.sendMessage(requestValues, replyHandler: nil, errorHandler: nil)
print("sended ip")
}
}
我正在尝试使用 WCsession 方法将保存的字符串发送到 Apple Watch。但是当我这样做时,我在 swift 2.3 中遇到错误:致命错误:在展开可选值时意外发现 nil !
func Reloadip() {
let ip = nsdefauts.object(forKey: saved)
let requestValues = ["send" : "A" , "IP" : ip as! String ]
print(requestValues)
if(WCSession.isSupported()){
session!.sendMessage(requestValues, replyHandler: nil, errorHandler: nil)
print("sended ip")
}
}
错误发生在 "ip as! String line" 我该如何解决这个问题。 ?
问候奎因
您应该改用更安全的代码
func Reloadip() {
guard let ip = nsdefauts.objectForKey(saved) as? String else {
print("there is no saved ip")
return
}
let requestValues = ["send" : "A" , "IP" : ip]
print(requestValues)
if(WCSession.isSupported()){
session?.sendMessage(requestValues, replyHandler: nil, errorHandler: nil)
print("sended ip")
}
}