C 输出log到LogCat
C 输出log到LogCat
草帽行者 发表于10个月前
C 输出log到LogCat
  • 发表于 10个月前
  • 阅读 21
  • 收藏 0
  • 点赞 0
  • 评论 0

新睿云服务器60天免费使用,快来体验!>>>   

C 输出log到LogCat

[TOC]

1. 新建c文件

2. 添加头文件

#include <android/log.h>

#include <stdio.h>
#include <stdlib.h>
#include <jni.h>
#include <android/log.h>

3. 添加日志输出标志

格式:#define LOG "LogCat中输出日志的标志"

#define LOG "c_log"

4. 给log.h对应的日志输出方法添加别名

格式:#define LOGI(...) __android_log_print(日志等级,日志标志,__VA_ARGS__)

日志等级

  • ANDROID_LOG_VERBOSE
  • ANDROID_LOG_DEBUG
  • ANDROID_LOG_INFO
  • ANDROID_LOG_WARN
  • ANDROID_LOG_ERROR (日志颜色:红色)
  • ANDROID_LOG_FATAL (日志颜色:红色)
#define LOG "c_log"
#define LOGV(...) __android_log_print(ANDROID_LOG_VERBOSE,LOG,__VA_ARGS__)
#define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG,LOG,__VA_ARGS__)
#define LOGI(...) __android_log_print(ANDROID_LOG_INFO,LOG,__VA_ARGS__)
#define LOGW(...) __android_log_print(ANDROID_LOG_WARN,LOG,__VA_ARGS__)
#define LOGE(...) __android_log_print(ANDROID_LOG_ERROR,LOG,__VA_ARGS__)
#define LOGF(...) __android_log_print(ANDROID_LOG_FATAL,LOG,__VA_ARGS__)

5. 调用对应的方法进行日志输出

LOGV("c输出测试: 等级v");
LOGD("c输出测试: 等级d");
LOGI("c输出测试: 等级i");
LOGW("c输出测试: 等级w");
LOGE("c输出测试: 等级e");
LOGF("c输出测试: 等级f");

6. LogCat显示结果

04-28 15:38:37.328 17454-17454/com.myc D/c_log: c输出测试: 等级d
04-28 15:38:37.328 17454-17454/com.myc I/c_log: c输出测试: 等级i
04-28 15:38:37.328 17454-17454/com.myc W/c_log: c输出测试: 等级w
04-28 15:38:37.328 17454-17454/com.myc E/c_log: c输出测试: 等级e
04-28 15:38:37.328 17454-17454/com.myc A/c_log: c输出测试: 等级f

7. 完整的c文件

#include <stdio.h>
#include <stdlib.h>
#include <jni.h>
#include <android/log.h>

#define LOG "c_log"
#define LOGV(...) __android_log_print(ANDROID_LOG_VERBOSE,LOG,__VA_ARGS__)
#define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG,LOG,__VA_ARGS__)
#define LOGI(...) __android_log_print(ANDROID_LOG_INFO,LOG,__VA_ARGS__)
#define LOGW(...) __android_log_print(ANDROID_LOG_WARN,LOG,__VA_ARGS__)
#define LOGE(...) __android_log_print(ANDROID_LOG_ERROR,LOG,__VA_ARGS__)
#define LOGF(...) __android_log_print(ANDROID_LOG_FATAL,LOG,__VA_ARGS__)

JNIEXPORT void JNICALL
Java_com_myc_jni_Jni_cLog(JNIEnv *env, jobject instance) {
    LOGV("c输出测试: 等级v");
    LOGD("c输出测试: 等级d");
    LOGI("c输出测试: 等级i");
    LOGW("c输出测试: 等级w");
    LOGE("c输出测试: 等级e");
    LOGF("c输出测试: 等级f");
}
  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 6
博文 28
码字总数 29999
×
草帽行者
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: