JNI學習之二:利用LOG調試本地C\C++代碼

步驟簡單描述如下:

1、在需要使用log的c代碼中,加入如下頭文件:

#include <android/log.h>

2、定義方便使用的LOG宏,例如:

#define TAG    "my-jni" // 這個是自定義的LOG的標識
#define LOGD(...)  __android_log_print(ANDROID_LOG_DEBUG,TAG,__VA_ARGS__) // 定義LOGD類型
#define LOGI(...)  __android_log_print(ANDROID_LOG_INFO,TAG,__VA_ARGS__) // 定義LOGI類型
#define LOGW(...)  __android_log_print(ANDROID_LOG_WARN,TAG,__VA_ARGS__) // 定義LOGW類型
#define LOGE(...)  __android_log_print(ANDROID_LOG_ERROR,TAG,__VA_ARGS__) // 定義LOGE類型
#define LOGF(...)  __android_log_print(ANDROID_LOG_FATAL,TAG,__VA_ARGS__) // 定義LOGF類型
3、在Android.mk文件中,添加加載log庫的語句:

<pre name="code" class="plain">LOCAL_LDLIBS:= -llog

指令就是用來讓NDK編譯的時候加載庫,-l是參數表示加載,log就是庫文件的名字liblog.so。例如要加載opengl的庫,那麼這句話就是:

LOCAL_LDLIBS:= -lGLESv2
4、使用log輸出功能,比如:

LOGI("GetStringUTFChars=%s", tmpstr);
就是在logcat中輸出一個級別爲info的log,而它的TAG就是之前定義的“my-jni”




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章