【发布时间】:2018-08-16 14:11:52
【问题描述】:
我需要从我的发布应用类型中删除所有日志记录。我已经尝试配置 proguard 为我做这件事。我的配置大多与此处提供的配置相匹配:proguard doesn't remove logs。
我已将 proguard-android.txt 更改为 proguard-android-optimize.txt 但没有运气。在阅读 Proguard 手册并检查以下输出后:
-whyareyoukeeping 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 static int wtf(...);
}
得知无法删除此内容,原因是:
Explaining why classes and class members are being kept...
Printing usage to [...]...
android.util.Log
is a library class.
android.util.Log: boolean isLoggable(java.lang.String,int)
is a library method.
android.util.Log: int v(java.lang.String,java.lang.String)
is a library method.
android.util.Log: int v(java.lang.String,java.lang.String,java.lang.Throwable)
is a library method.
android.util.Log: int i(java.lang.String,java.lang.String)
is a library method.
android.util.Log: int i(java.lang.String,java.lang.String,java.lang.Throwable)
is a library method.
android.util.Log: int w(java.lang.String,java.lang.String)
is a library method.
android.util.Log: int w(java.lang.String,java.lang.String,java.lang.Throwable)
is a library method.
android.util.Log: int w(java.lang.String,java.lang.Throwable)
is a library method.
android.util.Log: int d(java.lang.String,java.lang.String)
is a library method.
android.util.Log: int d(java.lang.String,java.lang.String,java.lang.Throwable)
is a library method.
android.util.Log: int e(java.lang.String,java.lang.String)
is a library method.
android.util.Log: int e(java.lang.String,java.lang.String,java.lang.Throwable)
is a library method.
android.util.Log: int wtf(java.lang.String,java.lang.String)
is a library method.
android.util.Log: int wtf(java.lang.String,java.lang.Throwable)
is a library method.
android.util.Log: int wtf(java.lang.String,java.lang.String,java.lang.Throwable)
is a library method.
这可能是什么原因?也许其他一些 Proguard 选项?是否有任何其他选项可以强制删除日志?
【问题讨论】:
标签: android proguard android-proguard