Errore di costruzione afnetworking: "La dichiarazione della classe anonima deve essere una definizione"

StackOverflow https://stackoverflow.com/questions/8894475

  •  29-10-2019
  •  | 
  •  

Domanda

Sto iniziando con l'afnetworking per sostituire il triste-defunto Asihttprequest.Le persone sembrano amare questo nuovo "afnetworking" ma non costruisce nel mio progetto e non riesco a capire perché.Sto ricevendo errori di costruzione a partire da Class class = NSClassFromString(className); in HTTPRequestOperationWithRequest:success:failure nel file AFHTTPClient.m.

L'errore è "La dichiarazione della classe anonima deve essere una definizione" e ho chiesto a teH Google ma non ottenuto nulla.Aiuto?

Contesto:

- (AFHTTPRequestOperation *)HTTPRequestOperationWithRequest:(NSURLRequest *)urlRequest 
                                                    success:(void (^)(AFHTTPRequestOperation *operation, id responseObject))success
                                                    failure:(void (^)(AFHTTPRequestOperation *operation, NSError *error))failure
{
    AFHTTPRequestOperation *operation = nil;
    NSString *className = nil;
    NSEnumerator *enumerator = [self.registeredHTTPOperationClassNames reverseObjectEnumerator];
    while (!operation && (className = [enumerator nextObject])) {
        Class class = NSClassFromString(className);
        if (class && [class canProcessRequest:urlRequest]) {
            operation = [[(AFHTTPRequestOperation *)[class alloc] initWithRequest:urlRequest] autorelease];
        }
    }
.

Modifica: Risolto per risposta qui sotto.File patch qui .

Modifica 2: Queste modifiche sono state tirate nel più recente AFNetworking, quindi chiunque lo trovi in futuro: Basta scaricare una versione fresca e sei tutti impostati. Inoltre, come va il futuro?Ciao futuro.

È stato utile?

Soluzione

Sono stato in grado di aggirare l'errore del compilatore rinominando la variabile "classe" a qualcos'altro.Sfortunatamente, non sono stato in grado di capire perché ho avuto il problema.Ecco un indizio: mi è successo quando ho aggiunto Afnetworking a un grande progetto esistente con bandiere di compilatore sconosciute.Quando ho aggiunto Afnetworking a un nuovo progetto nuovo, non ho colpito il problema.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top