日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

android ndk开发之Log日志(一)

發布時間:2024/4/17 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android ndk开发之Log日志(一) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

//直接上代碼:文件名my_log.h

?

/** my_log.h** Created on: 2016-7-6* Author: zhangyan*/#ifndef MY_LOG_H_#define MY_LOG_H_#include <android/log.h>#define MY_LOG_LEVEL_VERBOSE 1#define MY_LOG_LEVEL_DEBUG 2#define MY_LOG_LEVEL_INFO 3#define MY_LOG_LEVEL_WARNING 4#define MY_LOG_LEVEL_ERROR 5#define MY_LOG_LEVEL_FATAL 6#define MY_LOG_LEVEL_SILENT 7#ifndef MY_LOG_TAG# define MY_LOG_TAG __FILE__#endif#ifndef MY_LOG_LEVEL# define MY_LOG_LEVEL MY_LOG_LEVEL_VERBOSE#endif#define MY_LOG_NOOP (void) 0#define MY_LOG_PRINT(level,fmt,...) \__android_log_print(level, MY_LOG_TAG, "(%s:%u) %s: " fmt, \__FILE__, __LINE__, __PRETTY_FUNCTION__, ##__VA_ARGS__)#if MY_LOG_LEVEL_VERBOSE >= MY_LOG_LEVEL# define MY_LOG_VERBOSE(fmt,...) \MY_LOG_PRINT(ANDROID_LOG_VERBOSE, fmt, ##__VA_ARGS__)#else# define MY_LOG_VERBOSE(...) MY_LOG_NOOP#endif#if MY_LOG_LEVEL_DEBUG >= MY_LOG_LEVEL# define MY_LOG_DEBUG(fmt,...) \MY_LOG_PRINT(ANDROID_LOG_DEBUG,fmt, ##__VA_ARGS__)#else# define MY_LOG_DEBUG(...) MY_LOG_NOOP#endif#if MY_LOG_LEVEL_INFO >= MY_LOG_LEVEL# define MY_LOG_INFO(fmt,...) \MY_LOG_PRINT(ANDROID_LOG_INFO, fmt, ##__VA_ARGS__)#else# define MY_LOG_INFO(...) MY_LOG_NOOP#endif#if MY_LOG_LEVEL_WARNING >= MY_LOG_LEVEL# define MY_LOG_WARNING(fmt,...) \MY_LOG_PRINT(ANDROID_LOG_WARN, fmt, ##__VA_ARGS__)// MY_LOG_PRINT(ANDROID_LOG_ERROR, fmt, ##__VA_ARGS__) # define MY_LOG_FATAL(fmt,...) \MY_LOG_PRINT(ANDROID_LOG_FATAL, fmt, ##__VA_ARGS__)#else# define MY_LOG_FATAL(...) MY_LOG_NOOP#endif#if MY_LOG_LEVEL_FATAL >= MY_LOG_LEVEL# define MY_LOG_ASSERT(expression, fmt, ...) \if (!(expression)) { \__android_log_assert(#expression, MY_LOG_TAG, \fmt, ##__VA_ARGS__); \}#else# define MY_LOG_ASSERT(...) MY_LOG_NOOP#endif/*宏替換不是很了解的話可以用gcc -E 命令測試這里##如果可變參數長度為0, 會去掉前面的,這里的#會把后面的參數當成字符串例:#define E(expression) a(#expression)E(1>2) -> a("1>2)E("1>2") ->a("1>2")*/#endif /* MY_LOG_H_ */

?

轉載于:https://www.cnblogs.com/zhangyan-2015/p/5647626.html

總結

以上是生活随笔為你收集整理的android ndk开发之Log日志(一)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。