JNI를 사용하여 라이브러리 생성 시 디버깅 하기가 어렵다.
이를 해결하기 위해서 일반 printf 처럼 사용하는 방법이다.
1) android_log.h 파일을 생성한다.
#ifndef __ANDROID_LOG_H__ #define __ANDROID_LOG_H__
#include <android/log.h>
#define LOGV(...) __android_log_print(ANDROID_LOG_VERBOSE, "libnav", __VA_ARGS__) #define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG, "libnav", __VA_ARGS__) #define LOGI(...) __android_log_print(ANDROID_LOG_INFO, "libnav", __VA_ARGS__) #define LOGW(...) __android_log_print(ANDROID_LOG_WARN, "libnav", __VA_ARGS__) #define LOGE(...) __android_log_print(ANDROID_LOG_ERROR, "libnav", __VA_ARGS__)
#endif /* __ANDROID_LOG_H__ */ |
2) Android.mk 파일에 라이브러 추가.
LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -llog LOCAL_CFLAGS := -DCONFIG_EMBEDDED\ -DUSE_IND_THREAD\ |
3) 디버깅 할 c 파일에 #include "android_log.h" 추가.
4) Eclipse 에서 디버그로 실행 하면 Log cat 창으로 출력.
* Log cat 은 Window > Show View > Other > Log cat 에 있음.
'Programming & Tools > Android' 카테고리의 다른 글
[Android] File Stream Read / Write (0) | 2011.05.17 |
---|---|
[Android] "Failed to install xxxxxxx.apk on device 'M110axxxxx': timeout" (1) | 2011.04.07 |
[Android] Title Bar 없애는 방법 (0) | 2011.04.01 |
[Android] IP Address 가져오는 소스 예제 (0) | 2011.03.08 |
[Android] JNI 를 사용한 socket 생성 시 error (0) | 2011.02.24 |