应用程序崩溃,应由proguard删除

时间:2019-02-05 11:07:11

标签: android proguard

我有一个已发布的应用程序,它在Log.i("TAG", myCustomObject.toString())时崩溃了。我通过修复自定义对象的toString()方法来解决崩溃问题。我在那里真的有问题,这不是问题。 但是,我很好奇,因为该方法不应在“发行”版本上调用,因为我已通过proguard“禁用”了android.util.Log

我通过proguard禁用了android.util.Log,如下所示:

proguard-rules_release.pro

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

build.gradle

release {
    zipAlignEnabled true
    debuggable false
    shrinkResources true
    minifyEnabled true
    signingConfig signingConfigs.common
    proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules_release.pro'
}

崩溃行:

Log.i(LOG_TAG, "Result: " + myCustomObject);

由于自定义对象的toString()方法发生错误,导致崩溃。没关系...我只是好奇,因为我认为该行将被proguard完全删除。.在发行版中看不到任何日志消息,因此我假设proguard正常工作并删除了所有日志消息从应用程序中。但是我很好奇为什么我在那条线上撞车了...

0 个答案:

没有答案