轻松管理安卓应用中的log打印信息

       平时我们在调试程序的时候,总是需要打印各种的log信息,有些人,图省事,直接用system out的方法来打印日志信息,殊不知这些信息,在我们程序发布的时候,是不允许打印到控制台上的,相反,如果在病毒与反病毒中,这些打印的信息,可能会给坏人留下可乘之机

       我们在开发的时候,所以就要选择log打印日志的方式,那么有没有一种方法,合理的管理log呢?在开发的时候打印出来,在发布的时候,把所有的log日志全部关掉?

      答案是有的,那么就让作者给你一一道来:

管理log一般有两种方法,博主推荐大家使用下面的第一种方法:

第一种方法:

第一步:定义一个logTools工具类,相信你能够看懂的,谁的log,可以用谁的名字做方法名,如logli,这就是工程师li打印的日志

复制代码
import android.util.Log;

public class LogTools {

    public static boolean isShow = true;//上线模式

//public static boolean isShow = false;//开发模式

//ye工程师打出来的log
public static void logYe(String msg){ if(isShow){ Log.i("Ye", msg); } } //li工程师打出来的log public static void logli(String msg){ if(isShow){ Log.i("lili", msg); } } }
复制代码

第二步:在程序中应用的方式是:

LogTools.logYe("onTouchEvent-----"+event.getAction());

第二种方法:

在开发中经常要打印log,但是在我们发布项目的时候是不能打印。为了方便操作log我们需要自己定义个log类然后在开发阶段将下面LOG_LEVEL 设置为6这样所有的log都能显示,在发布的时候我们将LOG_LEVEL 设置为0.这样log就非常方便管理了

复制代码
public class Logger {
 public static int LOG_LEVEL = 0;
 public static int ERROR = 1;
 public static int WARN = 2;
 public static int INFO = 3;
 public static int DEBUG = 4;
 public static int VERBOS = 5;
 
 
 public static void e(String tag,String msg){
  if(LOG_LEVEL>ERROR)
  Log.e(tag, msg);
 }
 
 public static void w(String tag,String msg){
  if(LOG_LEVEL>WARN)
  Log.w(tag, msg);
 }
 public static void i(String tag,String msg){
  if(LOG_LEVEL>INFO)
  Log.i(tag, msg);
 }
 public static void d(String tag,String msg){
  if(LOG_LEVEL>DEBUG)
  Log.d(tag, msg);
 }
 public static void v(String tag,String msg){
  if(LOG_LEVEL>VERBOS)
  Log.v(tag, msg);
 }
}
复制代码

 

好了,开始干活吧,加油,朋友!

posted @   Andye  阅读(3766)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
点击右上角即可分享
微信分享提示