C++堆栈调用:
1.在需要加调用栈的.cpp文件中添加头文件
#include
2.在需要添加调用栈的函数中添加
android::CallStack stack;
stack.update();
stack.log("[log-XXXX-CallStack]");
3.在包含编译该文件的.mk文件中添加
LOCAL_SHARED_LIBRARIES += libutilscallstack
C堆栈调用:
在需要添加调用栈的.c文件的前一个目录添加 callstack.cpp 和 callstack.h文件
callstack.cpp文件中内容
#includeextern "C" void dumping_callstack(void); void dumping_callstack(void) { android::CallStack cs("QJY"); }
callstack.h文件中内容
void dumping_callstack(void);
参照上面的c++调用栈方法
在需要添加的文件中添加头文件
#include "callstack.h"
在需要添加的函数中添加
dumping_callstack();
在该文件目录上一层的.mk文件中添加
LOCAL_SRC_FILES += callstack.cpp LOCAL_SHARED_LIBRARIES += libutilscallstack
C实例:
需要在libcamera/oem2v4/xxxxx.c文件的xxxxxxxx函数中添加调用栈
步骤:
1.在libcamera/oem2v4/目录添加 callstack.cpp 和 callstack.h文件
callstack.cpp文件中内容
#includeextern "C" void dumping_callstack(void); void dumping_callstack(void) { android::CallStack cs("QJY"); }
callstack.h文件中内容
void dumping_callstack(void);
2.在xxxxx.c文件中添加#include "callstack.h"
3.在xxxxx.c文件的xxxxxxxx函数中添加dumping_callstack();
3.在libcamera/oem2v4/目录下的Android.mk文件中添加
LOCAL_SRC_FILES += callstack.cpp LOCAL_SHARED_LIBRARIES += libutilscallstack



