Chciałbym wiedzieć, jak uzyskać tylko wartość zwracaną 1 lub 0 .... powrót z żądania adresu URL asynchronicznie.Jak wysłać żądanie asynchronicznego adresu URL?
obecnie robię to w ten sposób:
NSString *UTCString = [NSString stringWithFormat:@"http://web.blah.net/question/CheckQuestions?utc=%0.f",[lastUTCDate timeIntervalSince1970]];
NSLog(@"UTC String %@",UTCString);
NSURL *updateDataURL = [NSURL URLWithString:UTCString];
NSString *checkValue = [NSString stringWithContentsOfURL:updateDataURL encoding:NSASCIIStringEncoding error:Nil];
NSLog(@"check Value %@",checkValue);
to działa, jednak blokuje mój główny wątek aż dostałam odpowiedź z powrotem z adresu URL, w jaki sposób ustawić go tak, będzie to zrobić w kolejny wątek zamiast głównego wątku?
EDIT: Odpowiedź kończę upcalling mojej funkcji z tym, że działa dobrze :)
[self performSelectorInBackground:@selector(shouldCheckForUpdate) withObject:nil];
Jak z iOS 5, można użyć '+ (void) sendAsynchronousRequest: (NSURLRequest *) kolejka życzenie (NSOperationQueue *) kolejka completionHandler: (void (^) (NSURLResponse * NSData * NSError *) Zamiast tego jest to program obsługi, który jest łatwiejszy i bardziej przejrzysty dla prostych żądań niż tworzenie obiektu delegata. Spróbuję napisać odpowiedź pokazującą tę metodę później. –
@MarkAmery Byłoby miło zobaczyć twoją odpowiedź. Mam trudności ze znalezieniem prostego przykładu 'sendAsynchronousRequest'. –