android关闭日志

不少网友说的方法都颇有用.可是方法都很复杂.好比 java

http://blog.csdn.net/jiese1990/article/details/21752159 android

一文所说的. app

那么咱们能够经过proguard直接优化掉LOG; 优化

首先,在混淆的时候,无效代码(即永远不可能被执行到的代码)将被优化掉. ui

好比定义了一个变量 spa

static final boolean DEBUG=false; .net

        if(DEBUG){
         Log.i(TAG,"info");
        }

由于DEBUG永远为false.因此这样的代码将被优化掉. code

固然也能够直接使用BuildConfig.DEBUG. blog

 参考http://blog.csdn.net/lzqjfly/article/details/12947857 get

public class Log {
  private static final boolean DEBUG = BuildConfig.DEBUG;

  public static void i(String tag, String msg) {
      if (DEBUG)
          android.util.Log.i(tag, msg);
  }

  public static void e(String tag, String msg) {
      if (DEBUG)
          android.util.Log.e(tag, msg);
  }

  public static void d(String tag, String msg) {
      if (DEBUG)
          android.util.Log.d(tag, msg);
  }

  public static void v(String tag, String msg) {
      if (DEBUG)
          android.util.Log.v(tag, msg);
  }

  public static void w(String tag, String msg) {
      if (DEBUG)
          android.util.Log.w(tag, msg);
  }
}

若是BuildConfig.DEBUG的值为false;

这样也会被混淆器优化掉的.

如何改变BuildConfig.DEBUG的值

  1. Project -> Build Automatically,即取消Build Automatically
  2. Project -> Clean
  3. Project -> Build
  4. Android Tools -> Export Android application

此时的BuildConfig.DEBUG就是false的状态了.

参考:

http://blog.csdn.net/lzqjfly/article/details/12947857

相关文章
相关标签/搜索