У меня есть программа, которая запрашивает строку JSON.Я создал класс, который содержит метод подключения ниже.Когда появляется корневое представление, оно запрашивает этот класс и метод для загрузки некоторых данных для корневого представления.Когда я проверяю код ошибки (изменяя URL-адрес хоста на 127.0.0.1), я ожидаю, что появится предупреждение.Поведение состоит в том, что корневое представление просто становится черным, и приложение прерывается без предупреждения.Никаких ошибок в режиме отладки на консоли тоже нет.Есть мысли по поводу этого поведения?Я искал подсказки к этому часами безрезультатно.Заранее благодарим за помощь.
Примечание: вызывается условное условие (ошибка) * , а также код UIAlertView.
- (NSString *)connect:(NSString *)urlString {
NSString *jsonString;
UIApplication *app = [UIApplication sharedApplication];
app.networkActivityIndicatorVisible = YES;
NSError *error = nil;
NSURLResponse *response = nil;
NSURL *url = [[NSURL alloc] initWithString:urlString];
NSURLRequest *req = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:10];
NSData *_response = [NSURLConnection sendSynchronousRequest: req returningResponse: &response error: &error];
if (error) {
/* inform the user that the connection failed */
//AlertWithMessage(@"Connection Failed!", message);
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Oopsie!"
message:@"Unable to connect! Try later, thanks."
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles: nil];
[alert show];
[alert release];
} else {
jsonString = [[[NSString alloc] initWithData:_response encoding:NSUTF8StringEncoding] autorelease];
}
app.networkActivityIndicatorVisible = NO;
[url release];
return jsonString;
}