当我的程序的 native 部分(C++、Qt)崩溃时,我在 logcat 中看到一些堆栈跟踪。但此消息没有应用程序名称,只有“DEBUG”标签。这就是为什么我无法发送崩溃报告(我使用 ACRA)因为“因为 JellyBean logcat 仅提供来自您自己的应用程序的痕迹” 我如何才能得到或做到他们以我的申请名义写的?
对不起我的英语不好, 谢谢!
最佳答案
您可以使用以下方式(结帐this thread): 使用以下内容创建 header :
#include <android/log.h>
#define LOGV(...) __android_log_print(ANDROID_LOG_VERBOSE, "libnav",
__VA_ARGS__)
#define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG , "libnav",
__VA_ARGS__)
#define LOGI(...) __android_log_print(ANDROID_LOG_INFO , "libnav",
__VA_ARGS__)
#define LOGW(...) __android_log_print(ANDROID_LOG_WARN , "libnav",
__VA_ARGS__)
#define LOGE(...) __android_log_print(ANDROID_LOG_ERROR , "libnav",
__VA_ARGS__)
#endif // ANDROID_ALOG_H
或者直接使用__android_log_print
。
关于android 从 LogCat 中的 native 代码获取 Stacktrace,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14976040/