美文网首页
Android JNI Log

Android JNI Log

作者: TurboHuang | 来源:发表于2017-12-03 17:06 被阅读0次

Android JNI Log 简单封装,用一个变量控制Log是否输出。注意这里涉及可变参数传递,所以要使用__android_log_vprint,不能使用__android_log_print。

//
// Created by Turbo on 2017/12/3.
//

#include <android/log.h>

#ifndef JNI_LOG_H
#define JNI_LOG_H

void LOGI(const char *tag, const char *fmt, ...);

void LOGW(const char *tag, const char *fmt, ...);

void LOGE(const char *tag, const char *fmt, ...);


#endif JNI_LOG_H

//
// Created by Turbo on 2017/12/3.
//
#include "log.h"

#define DEBUG true

void LOGI(const char *tag, const char *fmt, ...) {
    if (DEBUG) {
        va_list args;
        va_start(args, fmt);
        __android_log_vprint(ANDROID_LOG_INFO, tag, fmt, args);
        va_end(args);
    }
}


void LOGW(const char *tag, const char *fmt, ...) {
    if (DEBUG) {
        va_list args;
        va_start(args, fmt);
        __android_log_vprint(ANDROID_LOG_WARN, tag, fmt, args);
        va_end(args);
    }
}

void LOGE(const char *tag, const char *fmt, ...) {
    if (DEBUG) {
        va_list args;
        va_start(args, fmt);
        __android_log_vprint(ANDROID_LOG_ERROR, tag, fmt, args);
        va_end(args);
    }
}

相关文章

网友评论

      本文标题:Android JNI Log

      本文链接:https://www.haomeiwen.com/subject/xhxzbxtx.html