日志记录,调试, 故障排除

Logging

c/c++添加:

#include <android/log.h>

Android.mk添加:

LOCAL_LDLIBS += −llog

log等级:

typedef enum android_LogPriority {
...
ANDROID_LOG_VERBOSE,
ANDROID_LOG_DEBUG,
ANDROID_LOG_INFO,
ANDROID_LOG_WARN,
ANDROID_LOG_ERROR,
ANDROID_LOG_FATAL,
...
} android_LogPriority;

发送一个简单的字符串log:
参数为日志等级,日志内容,tag标签

__android_log_write(ANDROID_LOG_WARN, "hello-jni", "Warning log.");

发送一个格式化字符串

__android_log_print(ANDROID_LOG_ERROR, "hello-jni","Failed with errno %d", errno);

__android_log_vprint类似__android_log_print,传参

void log_verbose(const char* format, ...)
{
va_list args;
va_start(args, format);
__android_log_vprint(ANDROID_LOG_VERBOSE, "hello-jni", format, args);
va_end(args);
}
...
void example()
{
log_verbose("Errno is now %d", errno);
}

__android_log_assert记录断言失败,不需要类型

if (0 != errno)
{
__android_log_assert("0 != errno", "hello-jni",
"There is an error.");
}

猜你喜欢

转载自blog.csdn.net/a346492443/article/details/50897258