Error de compilación AFNetworking: "La declaración de clase anónima debe ser una definición"

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

  •  29-10-2019
  •  | 
  •  

Pregunta

Estoy empezando con AFNetworking para reemplazar el tristemente difunto ASIHTTPRequest.La gente parece amar esta nueva "afnetworking", pero no se basa en mi proyecto y no puedo entender por qué.Estoy recibiendo errores de construcción que comienzan en Class class = NSClassFromString(className); en HTTPRequestOperationWithRequest:success:failure en el archivo AFHTTPClient.m.

El error es "La declaración de clase anónima debe ser una definición" y le he preguntado a Google pero no ha obtenido nada.Ayuda?

contexto:

- (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];
        }
    }

Editar: Resuelto por respuesta a continuación.Archivo de parche aquí .

Editar 2: Estos cambios se han tirado en el nuevo AFnetworking, por lo que cualquiera encuentra esto en el futuro: Simplemente descargue una versión nueva y todos estén configurados. Además, ¿cómo está el futuro?Hola futuro.

¿Fue útil?

Solución

Pude moverme el error del compilador al cambiar el nombre de la "clase" de la variable a otra cosa.Desafortunadamente, no pude averiguar por qué estaba obteniendo el problema.Aquí hay una pista: me sucedió cuando agregué a AFNetworking a un gran proyecto existente con banderas de compilador desconocido.Cuando agregué a AFNetworking a un nuevo proyecto nuevo, no golpeé el problema en absoluto.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top