Ios 如何处理NSData内容URL EXC_断点错误
我正在尝试使用contentsOfURL从服务器获取NSData。当iPhone连接到wifi时,它工作正常。但当我没有连接到wifi时,我的应用程序会崩溃,并显示EXC_断点消息。在未连接时,我如何处理或规避崩溃问题Ios 如何处理NSData内容URL EXC_断点错误,ios,swift,nsdata,Ios,Swift,Nsdata,我正在尝试使用contentsOfURL从服务器获取NSData。当iPhone连接到wifi时,它工作正常。但当我没有连接到wifi时,我的应用程序会崩溃,并显示EXC_断点消息。在未连接时,我如何处理或规避崩溃问题 do { let varOption = try NSData(contentsOfURL: NSURL(string: urlToRequest)!, options:NSDataReadingOptions.DataReadingMappedIfSafe) } cat
do {
let varOption = try NSData(contentsOfURL: NSURL(string: urlToRequest)!, options:NSDataReadingOptions.DataReadingMappedIfSafe)
} catch {
print("error encountered")
}
是否要求使用
NSData
的内容URL
?为什么不使用NSURLSession
发出异步web请求
NSURLSession.sharedSession().dataTaskWithURL(NSURL(string: urlToRequest)!) { (data: NSData?, response: NSURLResponse?, error: NSError?) -> Void in
// if data && !error, do the thing
}.resume()
您可以使用本教程创建一个函数来检查iPhone是否连接到Internet 实现此函数后,您可以使用它来验证连接,然后将代码放入if语句块中
if isConnectedToNetwork() { //<-- This is the function implemented in tutorial posted before.
//Here we put your code
do {
let varOption = try NSData(contentsOfURL: NSURL(string: urlToRequest)!, options:NSDataReadingOptions.DataReadingMappedIfSafe)
} catch {
print("error encountered")
}
}
if isconnectedtonework(){//IsurlToRequest
nil?您好。谢谢您的想法。不。如果连接了wifi,此代码工作正常。即,当wifi未连接时,urlToRequest不会突然变为nil。如果我理解正确,NSData内容的URL无论如何都会被弃用。NSURLSERSESSION工作得很好。谢谢。