我正在开发一个使用NDK的应用程序,我想像在java android应用程序代码中那样从c库中声明和实现的函数中获取日志输出。请帮忙。
答案 0 :(得分:2)
如果我理解正确,这些是从本机端获取日志输出所需的步骤:
首先,包括必要的日志标题:
#include <android/log.h>
然后,为了易于使用,定义日志函数如下:
#define LOGI(...) ((void)__android_log_print(ANDROID_LOG_INFO, "some-tag", __VA_ARGS__))
#define LOGW(...) ((void)__android_log_print(ANDROID_LOG_WARN, "some-tag", __VA_ARGS__))
#define LOGE(...) ((void)__android_log_print(ANDROID_LOG_ERROR, "some-tag", __VA_ARGS__))
最后,每当您想要记录时,请调用您定义的函数,就像在常规C中使用printf一样。
LOGI("someIntValue: %d", someIntValue);
LOGW("someCharValue: %c", someCharValue);
LOGE("someStringValue: %s", someStringValue);
请注意,LOGI用于常规日志消息,LOGW用于警告,LOGE用于错误消息。您还可以查看位于NDK目录中的本机活动示例,我从中了解了如何登录NDK。