Bonjour J'essaye de créer une file d'attente NSOperaion pour télécharger un tas de fichiers PDF. Mais ça ne marche pas. Les méthodes de délégué ne sont pas appelées pour NSURLConnection puisque je les mets dans la file d'attente de NSOperation .... toutes les alternatives ou solution?NSURLConnection Problème avec NSOperationqueu
- (void) loadData {
NSOperationQueue *queue = [NSOperationQueue new];
NSInvocationOperation *operation;
for(int i=0;i<[self.pdfArray count];i++){
NSString *url = [NSString stringWithFormat:@"http://www.somelink.com/%@.pdf",[self.pdfArray objectAtIndex:i]];
operation = [[NSInvocationOperation alloc] initWithTarget:self
selector:@selector(loadDataWithOperation:)
object:url];
[queue addOperation:operation];
[operation release];
}
}
- (void) loadDataWithOperation:(NSString *) url{
// Create the request.
NSURLRequest *theRequest = [NSURLRequest requestWithURL:[NSURL URLWithString:url]
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:60.0];
NSURLConnection *theDownload = [[NSURLConnection alloc] initWithRequest:theRequest delegate:self startImmediately:YES];
}
Avez-vous mis une sortie de point d'arrêt ou de débogage dans votre méthode loadDataWithOperation: pour vérifier qu'elle n'est pas appelée? – Greg
Ouais c'est ce qu'on appelle ... le seul problème est quand je l'ajoute dans nsoperationqueue ça ne marche pas – vivianaranha
Est-ce que le téléchargement est créé correctement? (Vous n'obtiendrez pas un zéro retourné depuis l'init.) Vous ne devriez pas avoir à le faire, mais est-ce que l'appel de '[theDownload start]' fait une différence? –