日志封装
Posted 黄大仙爱编程
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了日志封装相关的知识,希望对你有一定的参考价值。
目前使用的手机不支持显示d和v的log,只能支持显示e、w、i日志,以下是我对log的封装,使用更加方便。
log当中增加当前时间显示,增加开关显示或者隐藏整个log,根据标签或者类别来设置显示或者隐藏log。
public class MyLogcatUtil { private static MyLogcatUtil instance = new MyLogcatUtil(); private String myTag = "myTag"; private boolean isShowE = true; private boolean isShowI = true; private boolean isShowW = true; private boolean isShow = true; private Map<String,String> notShowTagList; private MyLogcatUtil(){ notShowTagList = new HashMap<String,String>(); } public static MyLogcatUtil getInstance(){ return instance; } public void elog(String tag , String content){ if(!isShow){ return ; } if(notShowTagList.get(tag)!=null){ return; } if(isShowE){ Log.e(myTag+tag,getTime()+content); } } public void ilog(String tag , String content){ if(!isShow){ return ; } if(notShowTagList.get(tag)!=null){ return; } if(isShowI){ Log.i(myTag+tag,getTime()+content); } } public void wlog(String tag , String content){ if(!isShow){ return ; } if(notShowTagList.get(tag)!=null){ return; } if(isShowW){ Log.w(myTag+tag,getTime()+content); } } public boolean isShowE() { return isShowE; } public void setShowE(boolean showE) { isShowE = showE; } public boolean isShowI() { return isShowI; } public void setShowI(boolean showI) { isShowI = showI; } public String getMyTag() { return myTag; } public void setMyTag(String myTag) { this.myTag = myTag; } public boolean isShowW() { return isShowW; } public void setShowW(boolean showW) { isShowW = showW; } public boolean isShow() { return isShow; } public void setShow(boolean show) { isShow = show; } public void addNotShowTag(String tag){ this.notShowTagList.put(tag,tag); } public String getTime(){ Date date=new Date(); DateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String time=format.format(date); return time; } }
采用单例模式实现,确保设置显示或者隐藏对于整个日志输出有效。
以上是关于日志封装的主要内容,如果未能解决你的问题,请参考以下文章
VSCode自定义代码片段14——Vue的axios网络请求封装
我的Android进阶之旅NDK开发之在C++代码中使用Android Log打印日志,打印出C++的函数耗时以及代码片段耗时详情