Android Log Print Wrapper (c++)
안드로이드에서 로그를 찍고 싶을 때는 __android_log_print 함수를 사용 하면 되는데
이름이 길기도 길고 플랫폼에 따라 코드를 호환 되게 하던지 할 때 매크로로 사용 할 때 래퍼을 사용 하면 좋다.
#define LOG_Info(...) __android_log_print(ANDROID_LOG_INFO, LOG_NAME, __VA_ARGS__)
이렇게 해도 되고
#define LOGI(fmt, args...) __android_log_print(ANDROID_LOG_INFO, TAG, fmt, ##args)
위와 같이 해도 된다.
MyLog.h
#ifndef __LIB_FOR_LOG_H__
#define __LIB_FOR_LOG_H__
#define PRINT_LOG_FOR_LIB
#ifdef PRINT_LOG_FOR_LIB
#if defined(ANDROID) || defined(__ANDROID__)
#include <android/log.h>
#define LOG_NAME "My Log"
#define LOG_Verse(...) __android_log_print(ANDROID_LOG_VERBOSE, LOG_NAME, __VA_ARGS__)
#define LOG_Debug(...) __android_log_print(ANDROID_LOG_DEBUG, LOG_NAME, __VA_ARGS__)
#define LOG_Info(...) __android_log_print(ANDROID_LOG_INFO, LOG_NAME, __VA_ARGS__)
#define LOG_Warn(...) __android_log_print(ANDROID_LOG_WARN, LOG_NAME, __VA_ARGS__)
#define LOG_Error(...) __android_log_print(ANDROID_LOG_ERROR, LOG_NAME, __VA_ARGS__)
#else
#define LOG_Verse(...) printf( __VA_ARGS__)
#define LOG_Debug(...) printf( __VA_ARGS__)
#define LOG_Info(...) printf( __VA_ARGS__)
#define LOG_Warn(...) printf( __VA_ARGS__)
#define LOG_Error(...) printf( __VA_ARGS__)
#endif
#else
#define LOG_Verse(...)
#define LOG_Debug(...)
#define LOG_Info(...)
#define LOG_Warn(...)
#define LOG_Error(...)
#endif
#endif
'Unity3D' 카테고리의 다른 글
안드로이드에서 부팅 후 유니티 앱 자동 실행 되게 하기. (0) | 2020.06.11 |
---|---|
string.Format 메소드 for C# Unity3D (0) | 2020.05.26 |
Curved World with Surface Shader - Rev 2 (0) | 2020.05.16 |
Open JDK 1.8 다운로드 - Open JDK 1.8 Download (0) | 2020.05.12 |
Unity3d Build Error - Android SDK path error - Unable to list target platforms (0) | 2020.05.11 |