Eliminar NSLog de Release Builds

Posible duplicado:
¿Es cierto que uno no debería usar NSLog () en el código de producción?
¿Debo deshabilitar NSLog antes de lanzar la aplicación?

Necesito eliminar todos los NSLOG que están presentes en mi proyecto durante la compilation de versión. He intentado usar el código siguiente, pero aún tengo acceso a la compilation por teléfono, aún NSLOG aparece en la console.

#ifdef DEBUG #define debug_NSLog(format, ...) NSLog(format, ## __VA_ARGS__) #else #define debug_NSLog(format, ...) #endif 

Para simplemente eliminar NSLogs:

 #define NSLog(s,...) 

Un #define sin una sustitución especificada no sustituirá nada, eliminando cualquier cosa que coincida con ese #define . Esto funciona con definiciones de token simples y con definiciones de funciones similares a las anteriores.

Use el siguiente código

 #ifdef DEBUGGING # define DBLog(fmt,...) NSLog(@"%@",[NSString stringWithFormat:(fmt), ##__VA_ARGS__]); #else # define DBLog(...) #endif 

Asegúrese de que las banderas del comstackdor estén configuradas correctamente.

Además, cuando marcó la console, ¿comprobó si estaba usando el modo de liberación?

Utilizar esta

 #if TARGET_IPHONE_SIMULATOR #define NSLog(fmt,...) NSLog((@"%s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__); #else #define NSLog(...) #endif 

Esto imprimirá NSLog si lo está ejecutando en un simulador.