当主机不可缓存时,NSString stringWithContentsOfURL会崩溃应用程序

时间:2011-06-02 05:53:36

标签: ios networking nsstring

这是一个非常棘手的问题,我使用如下代码:

NSError *error = nil;
    NSString *guideText = [NSString stringWithContentsOfURL:url     encoding:NSUTF8StringEncoding error:&error];

代码就像魅力一样,除非我带来服务器哪个URL指向下方。它发出大约1分钟的暂停,但随后方法调用返回错误。到现在为止还挺好。当我在模拟器中或在调试器下的设备上运行app时,它的行为方式相同。但是如果我在没有调试器的设备上运行程序,它会在暂停后崩溃。我尝试将代码包装在@ try / @ catch中,但没有任何帮助。实际上调试器没有看到任何问题,所以这对我来说是个谜。我试着把一些保护代码如下:

NSURLRequest *request = [[NSURLRequest alloc] initWithURL:url];
if ([NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil])
    // here code above       
[request release];

代码的行为与之前完全相同。程序暂停一分钟,然后正常运行,除非它在没有调试器的设备上运行。

0 个答案:

没有答案