Java로 로그를 찍을 땐 Log.i / Log.d ... 등을 이용하여 로그를 출력한다.

JNI에서도 이를 지원한다.

 

<android/log.h>에 있는 __android_log_print를 이용하면 되는데, 이걸 그대로 사용하면 너무 길기에 보통 아래와 같이 정의해 놓고 사용한다.

#include <android/log.h>

#define LOG_TAG "tagname"
#define LOGV(...) __android_log_print(ANDROID_LOG_VERBOSE, LOG_TAG, __VA_ARGS__) 
#define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG  , LOG_TAG, __VA_ARGS__) 
#define LOGI(...) __android_log_print(ANDROID_LOG_INFO   , LOG_TAG, __VA_ARGS__) 
#define LOGW(...) __android_log_print(ANDROID_LOG_WARN   , LOG_TAG, __VA_ARGS__) 
#define LOGE(...) __android_log_print(ANDROID_LOG_ERROR  , LOG_TAG, __VA_ARGS__) 

 

android/log.h를 사용하기 위해선 liblog.so 라이브러리를 링크해야 한다.

따라서 Android.mk의 LOCAL_LDLIBS에 이를 추가해 줘야한다.

LOCAL_LDLIBS := -llog #추가

 

 

저작자 표시 비영리 변경 금지
신고
블로그 이미지

roter

JHB / Peripheral Programmer

댓글을 달아 주세요