Iphone 如果URL中没有数据,则nsdata错误

Iphone 如果URL中没有数据,则nsdata错误,iphone,nsdata,Iphone,Nsdata,嗨,我有下面的代码尝试获取图像数据,但有时URL上没有图像,应用程序正在崩溃,因为NSData没有引发异常。我们怎么能有一个计时器,这样我们就可以中止获取数据的操作,因为它需要更长的时间 tempData=[NSData dataWithContentsOfURL:[NSURL URLWithString:(NSString *)nextCatchItem.imageLink]]; 感谢光临,除非URL是一个文件://URL,否则不要使用-dataWithConte

嗨,我有下面的代码尝试获取图像数据,但有时URL上没有图像,应用程序正在崩溃,因为NSData没有引发异常。我们怎么能有一个计时器,这样我们就可以中止获取数据的操作,因为它需要更长的时间

tempData=[NSData dataWithContentsOfURL:[NSURL URLWithString:(NSString *)nextCatchItem.imageLink]];              

感谢光临,除非URL是一个文件://URL,否则不要使用
-dataWithContentsOfURL:
。这将执行同步获取,这在主线程上是一个可怕的想法,而在后台线程上则是一个糟糕的想法(因为没有错误报告)。相反,您应该使用
NSURLConnection
,最好与异步API一起使用,如果您在后台线程上运行,则与同步API一起使用。

您好,谢谢您的帮助。你能给我介绍一个教程吗?我试图实现的是从URL导入图像并显示它们\关于异步方法呢?是的,我正在研究它,有一个关于异步方法的问题。如果我必须在显示当前图像的同时下载未来显示器的图像,我如何设置nsurlconnection,使其在后台下载而不阻止用户交互?这可能吗?这就是“异步”的意思。它在下载时不会阻止运行循环。当数据进入时,它会触发事件,一旦它告诉您数据已经完成,您就可以将数据加载为图像并显示出来。哇。这就是我所需要的,我对此感到沮丧。。谢谢你:)