Objective-C возвращает строку в NSURLSessionDataTask

Я пытаюсь создать функцию NSString для возврата строки с NSURLSessionDataTask.

- (NSString *) retrieveData
{
    self.session = [NSURLSession sharedSession];
    self.dataTask = [self.session dataTaskWithURL:[NSURL URLWithString:URL] completionHandler:^(NSData *data, NSURLResponse *response, NSError *error)
    {
        if(data)
        {
            self.json = [NSJSONSerialization JSONObjectWithData:data options:0 error:&error];
            NSLog(@"%@", self.json);

            for(NSDictionary *stateArray in self.json)
            {
                NSString *sName = stateArray[@"State"];
                if(self.state == sName)
                {
                    NSString *sFlag = stateArray[@"State_Flag_Path"];
                    return sFlag;
                }
            }
        }
        else
        {
            NSLog(@"Failed to fetch URL: %@", error);
        }
    }];
    [self.dataTask resume];
}

Затем я получаю сообщение об ошибке из-за несовместимых типов указателей блоков. Кто-нибудь может помочь? Заранее спасибо.


person OHHO    schedule 08.12.2015    source источник
comment
stackoverflow.com/ вопросы/20871506/   -  person Kaptain    schedule 18.01.2016


Ответы (1)


Я нашел способ... вернуть строку после

[self.dataTask resume];
person OHHO    schedule 12.12.2015