1、Java文件加calltrace
在需要添加trace的地方添加以下几行,即可在log中打印出trace
try{
throw new Exception("debug trace");
}catch(Exception e){
w.printStackTrace();
}
import android.os.Debug;
函数中添加
Log.d("Ben-debug",Debug.getCaller(5));
2、C++添加calltrace
#AN 5.0及以前版本:
(1)#include <utils/CallStack.h>
(2)在cpp文件需要添加trace的地方添加:
CallStack stack;
stack.update();
stack.log("debug trace");
#AN 6.0及之后版本:
(1)确保对应的Android.mk有包到libutils.so
LOCAL_SHARED_LIBRARIES += libutils
(2)#include <utils/CallStack.h>
(3)在cpp文件需要添加trace的地方添加:
android::Callstack stack("debug trace",1);
#AN 9.0有用到Android.bp,需要做一些改动
(1)确保对应的Android.bp中的share_libs有包到以下两个lib库:libutils和libutilscallstack, header_libs有包到libutils_hreaders,没有则添加
(2) #include <utils/CallStack.h>
(3)在cpp文件需要添加trace的地方添加:
Callstack stack("debug trace",1);
Android应用中添加calltrace的方法
本文介绍了在Android应用中如何添加calltrace,包括在Java文件中通过抛出异常并捕获来打印trace,以及在C++代码中针对不同Android版本使用utils库的CallStack或Callstack类进行trace记录。
3708

被折叠的 条评论
为什么被折叠?



