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”




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