文档章节

Android NDK日志工具类分装

IamOkay
 IamOkay
发布于 2015/01/18 17:27
字数 244
阅读 93
收藏 5

定义头文件 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);
	}
}


© 著作权归作者所有

IamOkay

IamOkay

粉丝 204
博文 483
码字总数 403228
作品 0
海淀
程序员
私信 提问
APK反逆向之二:四种基本加固方式

近些年来移动 APP 数量呈现爆炸式的增长,黑产也从原来的PC端移到了移动端,伴随而来的逆向攻击手段也越来越高明。本篇章主要介绍应用加固的最基础的四种方式:1.proguard 混淆 2.签名比对验...

凸一_一凸
09/29
0
0
Android 原生开发工具包 NDK r14 发布

NDK (Native Development Kit) ,Android 原生开发工具包,是一个包含 API、交叉编译器、链接程序、调试器、构建工具、文档和示例应用程序的综合工具集。 最新版本的 Android NDK r14,现在可...

王练
2017/03/22
3.1K
6
[Android]Android开发入门之HelloWorld

引言: 在做Unity开发的时候,发现这么个问题,虽然Unity是跨平台的,能够进行Android,IOS,Web,PC等开发,但如果要实现一些稍微系统 层的东西,还是需要通过通信,调用原系统的接口(自定义...

丁小未
2014/04/08
345
0
使用 Android NDK 重用现有的 C 代码

开始之前 首先,了解 Android 原生开发工具包(NDK)的动机之一是得以利用开源项目,大多数项目都是用 C 语言编写的。完成本教程后,您将了解到如何创建 Java 本地接口(JNI)库,它使用 C ...

IBMdW
2012/01/05
986
0
使用 Android NDK 重用现有的 C 代码

开始之前 首先,了解 Android 本机开发人员工具包(NDK)的动机之一是得以利用开源项目,大多数项目都是用 C 语言编写的。完成本教程后,您将了解到如何创建 Java 本地接口(JNI)库,它使用...

IBMdW
2011/05/12
2.1K
0

没有更多内容

加载失败,请刷新页面

加载更多

arduino项目-1. 模拟楼道灯

@toc 1.1 情景说明 说明 漆黑的夜晚,当有人非法进入一所房屋,房屋内的灯在恰当的时间亮起,也许会有效阻止非法活动的继续。 效果展示 1.2 实验器材 器材名称 数量 继电器 1 人体红外感应器...

acktomas
13分钟前
1
0
Nacos 常见问题及解决方法

Nacos 开源至今已有一年,在这一年里,得到了很多用户的支持和反馈。在与社区的交流中,我们发现有一些问题出现的频率比较高,为了能够让用户更快的解决问题,我们总结了这篇常见问题及解决方...

阿里云官方博客
19分钟前
2
0
pinyin4j 满足中文转拼音的需求

引入依赖 // https://mvnrepository.com/artifact/com.belerweb/pinyin4j //汉字转拼音compile group: 'com.belerweb', name: 'pinyin4j', version: '2.5.1' 写入中文转拼英的工具......

edison_kwok
24分钟前
2
0
IPSE接入Substrate/Polkadot插槽实现互操作性的运行原理

Substrate框架将区块链的众多功能都模块化,对于开发者来说,只是一个选择的问题,同时还保持了众多的可以定制的功能和模块,比如底层通信模块,比如账户体系,比如共识机制等都是可以自己定...

IPSE
30分钟前
153
0
linux配置安装phpMyAdmin的步骤记录

1、首先在phpMyAdmin官方网站 http://www.phpmyadmin.net/downloads下载源码包,或者通过脚本之家进行下载://www.jb51.net/codes/405261.html ,下载后上传到服务器解压即可,或者通过Linux...

蜗牛女孩
31分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部