실제로 올려서 테스트 하는 경우도 있지만 보통은 simulator에서 열심히 디버깅을 하고 device에 올려서 최종 테스트를 하고.. 이런 과정을 거쳐서 개발을 하는데요, 이럴때 device에 올렸을때만 로그가 안찍히게 할 수 있는 방법을 소개해드립니다.
iPhone simulator에서 동작을 할 때에는 "TARGET_IPHONE_SIMULATOR" 값이 자동으로 define됩니다.
이 define된 것을 이용하여 조건부 컴파일을 하여 simulators 일때만 로그를 남길 수 있게 할 수 있습니다. 예를 들면 다음과 같이 말이죠.
#define USE_CONDITIONAL_LOG #ifdef USE_CONDITIONAL_LOG #if TARGET_IPHONE_SIMULATOR #define ConditionalNSLog NSLog #else #define ConditionalNSLog (void) #else #define ConditionalNSLog NSLog #endif
위와 같이 선언한 뒤 실제 코드에는 다음과 같이 이용합니다.
ConditionalNSLog(@"hello~");
Posted by 장현준


