2017-03-01 60 views
1

下面的代码是我在使用Proguard遵循一些后hereherehere但它不能正常工作调试模式下删除Logcat配置。我的Logcat仍然显示。
我在这里做错了什么?
另一个问题是我看到有人提出另一种删除日志的方式是创建一个像this这样的自定义LogcatUtils类,或者使用Timber所以我不知道Proguard是否可以删除Logcat
我仍然希望完全删除Logcat,因为我认为它可能会减小APK的大小。
任何帮助或建议,将不胜感激。Proguard的不能删除日志猫AndroidStudio

build.grade

buildTypes { 
    debug { 
     minifyEnabled true 
     proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' 
    } 
    } 

proguard-rules.pro

-assumenosideeffects class android.util.Log { 
    public static boolean isLoggable(java.lang.String, int); 
    public static int v(...); 
    public static int i(...); 
    public static int w(...); 
    public static int d(...); 
    public static int e(...); 
} 

活动代码

public class MainActivity extends AppCompatActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     for(int i = 0; i < 20; i++) { 
      Log.d("TAG", "hehe"); 
     } 
    } 
} 

我忒STED它在仿真器构建变量=调试 演示项目https://drive.google.com/file/d/0B_poNaia6t8kSTRMV2cxUjlaSDA/view?usp=sharing

回答

2

尝试增加debuggable配置

debug { 
    minifyEnabled true 
    debuggable false //add this to remove logcat 
    proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
} 
+0

谢谢。但我有测试和Logcat仍然显示:(如果你想看演示项目,请查看https://drive.google.com/file/d/0B_poNaia6t8kSTRMV2cxUjlaSDA/view?usp=sharing –

+0

你已经压缩了项目建立文件夹,使文件太大,无法下载。你可以只发布'build.gradle'文件 – arjun

+0

它只是28Mbs。我的演示项目是非常简单的不包含任何特定的部分。如果你不能下载,你可以创建我想你会面临像我这样的问题 –