在Android C/C++層中,要透過LOG來印出測試/錯誤訊息,使用LOG的方法。
一般可直接使用「__android_log_print()」函式來印出log訊息,
以下將透過「#define」來定義,使用該函式。
步驟1:在相對應的mk檔內,加入「LOCAL_LDLIBS:=-llog」。
步驟2:在C/C++檔案內,加入「#include<android/log.h>」、「#define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG, keymath, __VA_ARGS__)」
步驟3:自C/C++檔案內,使用「LOGD("測試訊息");」
logcat 端輸出結果:
D/keymath (32) 測試訊息
********************補充說明********************
如果想要修改顯示的顏色,則參考相對應的顏色標示,如果想定義不同的LOG(LOGV、LOGD、LOGI、LOGW、LOGE)則可以參考下列定義方式:
#define LOGV(...) __android_log_print(ANDROID_LOG_VERBOSE, "ProjectName", __VA_ARGS__) :黑色
#define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG , "ProjectName", __VA_ARGS__) :藍色
#define LOGI(...) __android_log_print(ANDROID_LOG_INFO , "ProjectName", __VA_ARGS__) :綠色
#define LOGW(...) __android_log_print(ANDROID_LOG_WARN , "ProjectName", __VA_ARGS__) :橙色
#define LOGE(...) __android_log_print(ANDROID_LOG_ERROR , "ProjectName", __VA_ARGS__) :紅色
註:若是編譯動態library時出現錯誤訊息「cannot find -llog」時,
需修改成:LOCAL_LDLIBS:= -L$(SYSROOT)/usr/lib -llog
參考出處:
http://www.360doc.com/content/11/0519/15/474846_117915969.shtml
全站熱搜