不少網友說的方法都頗有用.可是方法都很複雜.好比 java
http://blog.csdn.net/jiese1990/article/details/21752159 android
一文所說的. app
那麼咱們能夠經過proguard直接優化掉LOG; 優化
首先,在混淆的時候,無效代碼(即永遠不可能被執行到的代碼)將被優化掉. ui
好比定義了一個變量 spa
static final boolean DEBUG=false; .net
if(DEBUG){由於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的值
此時的BuildConfig.DEBUG就是false的狀態了.
參考: