定义头文件 Log.h
#include <android/log.h>
#ifndef LOG_H_
#define LOG_H_
class Log {
private:
Log();
virtual ~Log();
public:
static bool IS_DEBUG;
static int DEFAULT_MIN_LEVEL;
static void V(const char * tag,const char * msg);
static void D(const char * tag,const char * msg);
static void I(const char * tag,const char * msg);
static void W(const char * tag,const char * msg);
static void E(const char * tag,const char * msg);
static void F(const char * tag,const char * msg);
};
#endif /* LOG_H_ */
实现类Log.cpp
#include "Log.h"
Log::Log() {
}
Log::~Log() {
Log::DEFAULT_MIN_LEVEL = ANDROID_LOG_DEBUG;
Log::IS_DEBUG = false;
}
int Log::DEFAULT_MIN_LEVEL = ANDROID_LOG_DEBUG;
bool Log::IS_DEBUG = true;
void Log::D(const char * tag,const char *msg)
{
if(Log::IS_DEBUG && Log::DEFAULT_MIN_LEVEL<=ANDROID_LOG_DEBUG)
{
__android_log_print(ANDROID_LOG_DEBUG,tag,"%s",msg);
}
}
void Log::V(const char * tag,const char *msg)
{
if(Log::IS_DEBUG && Log::DEFAULT_MIN_LEVEL<=ANDROID_LOG_VERBOSE)
{
__android_log_print(ANDROID_LOG_VERBOSE,tag,"%s",msg);
}
}
void Log::I(const char * tag,const char *msg)
{
if(Log::IS_DEBUG && Log::DEFAULT_MIN_LEVEL<=ANDROID_LOG_INFO)
{
__android_log_print(ANDROID_LOG_INFO,tag,"%s",msg);
}
}
void Log::E(const char * tag,const char *msg)
{
if(Log::IS_DEBUG && Log::DEFAULT_MIN_LEVEL<=ANDROID_LOG_ERROR)
{
__android_log_print(ANDROID_LOG_ERROR,tag,"%s",msg);
}
}
void Log::W(const char * tag,const char *msg)
{
if(Log::IS_DEBUG && Log::DEFAULT_MIN_LEVEL<=ANDROID_LOG_WARN)
{
__android_log_print(ANDROID_LOG_WARN,tag,"%s",msg);
}
}
void Log::F(const char * tag,const char *msg)
{
if(Log::IS_DEBUG && Log::DEFAULT_MIN_LEVEL<=ANDROID_LOG_FATAL)
{
__android_log_print(ANDROID_LOG_FATAL,tag,"%s",msg);
}
}