我正在尝试将此日志记录语句移植到工作中,因此它将在 linux 和 android 上运行我的 #define'ing 它:
__android_log_print(ANDROID_LOG_ERROR, LOG_TAG, __VA_ARGS__)
我已经交叉编译了我的应用程序以在 Linux 和 Android 上运行。但是,由于 linux 没有我自己尝试过的等价物。
/** ANDROID */
#if defined(__ANDROID__)
#include <android/log.h>
#define LOG_ERROR ANDROID_LOG_ERROR
#define LOG(PRIORITY, fmt, ...) __android_log_print(ANDROID_LOG_UNKNOWN, LOG_TAG, fmt, ##__VA_ARGS__)
/** LINUX */
#elif defined(linux) || defined(__linux) || defined(__linux__)
#define LOG_ERROR LINUX_LOG_ERROR
#define LOG(PRIORITY, fmt, ...) printf(PRIORITY fmt, ##__VA_ARGS__)
#endif
然后在linux下运行时这样使用
LOG(LOG_ERROR, "Testing loggging [ %d ]", test);
有一个更好的方法吗?
非常感谢您的任何建议,