安卓 jni C/C++ logcat 调试输出

来源:互联网 发布:聚合数据使用必须认证 编辑:程序博客网 时间:2024/05/19 18:13

最近在弄 ndk jni,记录下调试技巧

1.在代码中加入

#include <android/log.h>

#define LOG_TAG  jnidebug

#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_print 这个函数有点像内核的printk函数的用法有ANDROID_LOG_VERBOSE ,ANDROID_LOG_DEBUG 等级,

LOG_TAG 定义log tag用来在logcat中新建过滤器输出,便于查看

2.在Android.mk 中加入(Android.mk为可以理解为安卓中的Makefile)

LOCAL_LDLIBS := -llog      

或者 LOCAL_LDLIBS    := -L$(SYSROOT)/usr/lib -llog  (-L 参数是gcc 中手动指定链接库路径 -llog  -l 为指定链接库的名字 即liblog.so,-l 后面接的是lib**.so,中的**)  

3.直接使用上面给定义的5个宏,像prinf函数一样使用,再结合logcat过滤下输出就可以了

 

1 0
原创粉丝点击