Android C程序打印logcat日志


版权声明:

本文可任意转载引用,但务必在明确位置注明原文出处:

http://blog.csdn.net/luzhenrong45/article/details/51659977



1. 首先,Android.mk里面添加以下


LOCAL_SHARED_LIBRARIES := liblog libutils
LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -llog 


2.  然后,在相应的c/c++ 头文件中,添加以下内容

#include 
#define LOG_TAG "JPEG_JNI"

#define DEBUG
#define ANDROID_PLATFORM

#ifdef DEBUG
	#ifdef ANDROID_PLATFORM
		#define LOGD(...) ((void)__android_log_print(ANDROID_LOG_DEBUG, LOG_TAG, __VA_ARGS__))
		#define LOGI(...) ((void)__android_log_print(ANDROID_LOG_INFO, LOG_TAG, __VA_ARGS__))
		#define LOGW(...) ((void)__android_log_print(ANDROID_LOG_WARN, LOG_TAG, __VA_ARGS__))
		#define LOGE(...) ((void)__android_log_print(ANDROID_LOG_ERROR, LOG_TAG, __VA_ARGS__))
	#else
		#define LOGD(fmt, ...) printf(fmt"\n", ##__VA_ARGS__)
		#define LOGI(fmt, ...) printf(fmt"\n", ##__VA_ARGS__)
		#define LOGW(fmt, ...) printf(fmt"\n", ##__VA_ARGS__)
		#define LOGE(fmt, ...) printf(fmt"\n", ##__VA_ARGS__)
	#endif
#else
	#define LOGD(...)
	#define LOGI(...)
	#define LOGW(...)
	#define LOGE(...)
#endif


接着就可以c/c++ 程序代码里面打印log日志了,比如:

LOGD("[%s] decode %d jpeg images, spend time: %d ms\n", __FUNCTION__, count, timeuse/1000);

adb logcat里面会有相应日志:

D/JPEG_JNI(24333): [decode_jpeg_jni]  decode 30 jpeg images, spend time: 6041 ms.


你可能感兴趣的:(Android)