Android NDK入門(三)-- native代碼的調試方法

隨着NDK中的編寫的C/C++代碼越來越複雜,對這塊native代碼的調試必不可少

1,日誌方式:
在C/C++文件中包含日誌頭文件
#include <android/log.h>

通過LOG_TAG定義模塊名稱
#ifndef LOG_TAG
#define LOG_TAG "morsecodetool"
#endif

打印日誌方法
__android_log_print(ANDROID_LOG_DEBUG, LOG_TAG, "NDK:LC: [%s]", "XXXX function failed");

Android.mk文件中需要確保LOCAL_LDLIBS中包含 -llog,例如
LOCAL_LDLIBS    := -L$(SYSROOT)/usr/lib -llog 

2,ndk-gdb方式:
在AndroidManifest.xml文件中增加android:debuggable="true"

ndk-build重新編譯native代碼

在java代碼中調用native方法的地方設置斷點

debug方式運行程序,直到觸發斷點

在終端窗口的本工程目錄下,運行ndk-gdb,對native方法設置斷點,使用方法和gdb類似

Resume程序運行,ndk-gdb會在native方法處觸發斷點,開始natvie代碼的調試

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章