Android中间层c语言log打印方法
16lz
2021-01-26
在Android中,中间层的C代码要打印出日记,有如下两种方法
1.往串口里打印数据
调用log_to_kmsg函数,然后adb shell dmesg查看日记或者电脑接串口来查看,如
log_to_kmsg("the num is %d\n",ret);
#include #include #include #include static void log_to_kmsg(char* format,...) { va_list args; int fd; char string[1000]; va_start(args,format); vsprintf(string,format,args); va_end(args); fd = open("/dev/kmsg",O_RDWR); if(fd == -1) { return; } write(fd,string,strlen(string)+1); close(fd); }
2.往logcat里打印数据
在Android.mk加入
LOCAL_SHARED_LIBRARIES := liblog libutilsLOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -llog
并调用
#include #define LOG_TAG "MSG"#define LOGD(...) ((void)__android_log_print(ANDROID_LOG_DEBUG, LOG_TAG, __VA_ARGS__))#define LOGI(...) ((void)__android_log_print(ANDROID_LOG_INFO, LOG_TAG, __VA_ARGS__))#define LOGW(...) ((void)__android_log_print(ANDROID_LOG_WARN, LOG_TAG, __VA_ARGS__))#define LOGE(...) ((void)__android_log_print(ANDROID_LOG_ERROR, LOG_TAG, __VA_ARGS__))
更多相关文章
- 关于overridePendingTransition效果在1.6版本中会出现VerifyErro
- Android:Activity(九):Fragment管理与Fragment事务
- Android——SharedPreferences数据存储
- Android设置程序最小运行的堆内存
- android device 注册、添加、管理
- Android(安卓)4.1 Netd详细分析(三)代码分析1
- TabActivity子类中处理返回键事件
- android showSoftInput方法调用软键盘不显示
- Android(安卓)webView与JavaScript的交互