Привет, я новичок, и я пытаюсь загрузить данные геокодирования с веб-страницы googleapi.Я сделал это с помощью: code:
NSMutableString *urlStr = [[NSMutableString alloc] initWithString:temp];
NSMutableString *address = [[NSMutableString alloc] initWithString:l.Address];
[address appendString:@" "];
[address appendString:l.CityName];
[address appendString:@" "];
[address appendString:l.State];
[address appendString:@" "];
[address appendString:l.PostalCode];
NSArray *addressArray = [address componentsSeparatedByString:@" "];
[address release];
NSString *a = [addressArray componentsJoinedByString:@"+"];
[urlStr appendString:a];
[urlStr appendString:@"&sensor=false"];
NSURL *url = [[NSURL alloc] initWithString:[urlStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
NSData *data = [NSData dataWithContentsOfURL:url];
Это работало нормально, но проблема заключалась в том, что он заблокировал мой графический интерфейс, поскольку все это было сделано синхронно.
Кто-то предложил мне сделать это асинхронно, используяNSURLrequest.Итак, я пошел на сайт Apple.оттуда я увидел их пример.Тем не менее, я все еще застрял.Как преобразовать приведенный выше код, являющийся синхронным запросом, в асинхронный?Пока это то, что у меня есть, но я не уверен, что это работает ...... немного смущен ... может кто-нибудь, пожалуйста, укажите мне правильное направление с этим кодом?
NSURL *url = [[NSURL alloc] initWithString:[urlStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
//create NSURL request for asynchronous processing
NSURLRequest *theRequest = [NSURLRequest requestWithURL:url
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:60.0];
NSURLConnection *theConnection= [[NSURLConnection alloc] initWithRequest:theRequest delegate:self];
if (theConnection)
{
receivedData = [[NSMutableData data] retain];
}
else
{
// Inform the user that the connection failed.
}