日常遇到源码的问题,常用的方法就是打印堆栈,通过打印堆栈可以很清晰看到代码调用堆栈
Java 堆栈打印
java 的打印在堆栈
Log.d("TEXT", "textDebug", new NullPointException())
C++ 堆栈打印
C++ 打印需要引入 CallStack 该类打印。实现步骤如下
第一步需要先引入 对应的头文件,并且打开日志打印开关
#define LOG_NDEBUG 0
#include <utils/Log.h>
#include <utils/CallStack.h>
添加对应的打印代码如下
CallStack stack;
stack.update();
stack.log("andoridThreadStack");
第三步 添加库的引用
LOCAL_SHARED_LIBRARIES :=libandroid_runtime \
libcutils \
libutils \
liblog \
libutilscallstack //高版本需要该库
最后执行编译运行即可 输入logcat 日志过滤可以看到该打印