久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

在Android C/C++層添加LOG調(diào)試(LOGI\LOGD\LOGE...)輸出支持

 開花結(jié)果 2011-05-19

最近在研究Android 2.3.3源代碼的C/C++層,,需要對代碼進(jìn)行一些調(diào)試,,但是奇怪的是,,直接添加LOGD("XXXXXXXX");,,使用logcat卻看不到任何輸出,,換成LOGI,、LOGV,、LOGW、LOGE也沒有效果,。于是在網(wǎng)上查找解決方法,,經(jīng)過幾次試驗(yàn),終于找到了,,現(xiàn)在貼到下面?zhèn)渫?/p>

第一步:在對應(yīng)的mk文件中加入:LOCAL_LDLIBS := -llog
第二步:在要使用LOG的cpp文件中加入:
#include <android/log.h>
#define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG, "keymatch", __VA_ARGS__)
第三步:這樣就可以使用了:LOGD("我要看到的調(diào)試信息^_^");
 
這樣,,在logcat端看到的輸出是:
D/keymatch( 32):我要看到的調(diào)試信息^_^
 
如果想改變輸出中的各項(xiàng)內(nèi)容,可以參考相應(yīng)顏色的標(biāo)示,,比如,,如果想定義LOGE,就可以把上面的ANDROID_LOG_DEBUG改成ANDROID_LOG_ERROR,,同理,,LOGI神馬的也都以此類推:

#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__)

當(dāng)然,如果不嫌麻煩,,也可以直接使用__android_log_print函數(shù),,而不define定義LOGxxx
 
如果還想了解更詳細(xì)的內(nèi)容,也可以參考這篇文章: 《在android 輸出log 信息 用于調(diào)試》
 
另外,,有文章稱此方法在編譯動態(tài)庫的時候可能會出問題,,會提示cannot find -llog的錯誤。意思是找不到liblog.so這個庫文件,。
因此需要改成 LOCAL_LDLIBS:=  -L$(SYSROOT)/usr/lib -llog 才可以正常編譯,。但是我這邊編譯動態(tài)庫的時候,好像不用這樣改也行,,沒發(fā)現(xiàn)編譯時提示“cannot find -llog”的錯誤,。如果您在實(shí)踐過程中發(fā)現(xiàn)有這樣的問題,可以參考該文章,,鏈接在此:《如何在android native編程中使用logCat》

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請點(diǎn)擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多