Android-NDK中C++打印日志到LogCat

C++打印日志到Android LogCat。

Android-通过NDK编译so库参考:Android-通过NDK编译so库

需要首先设置Android.mk,加上一行:

LOCAL_LDLIBS :=  -L$(SYSROOT)/usr/lib -llog 用于在C++中调用Android的Log方法,打印日志到LogCat

完成后,在Cpp实现文件中,导入头文件,并定义宏:

1
2
3
4
5
6
#include <android/log.h>

#define LOG_TAG "JNI LOG"
#define LOGE(a) __android_log_write(ANDROID_LOG_ERROR,LOG_TAG,a)
#define LOG(...) __android_log_print(ANDROID_LOG_ERROR,LOG_TAG, __VA_ARGS__)
#define LOG_LINE LOG("%d", __LINE__)

使用:

1
2
3
LOGE("test");
LOG("%d", 0);
LOG_LINE;