Proguard收缩太多了

时间:2012-03-24 11:26:17

标签: android adt proguard shrink

从ADT 17开始,你可以在gen文件夹中找到一个带有DEBUG常量的BuildConfig类。我经常在代码中使用此常量,因为ADT在导出应用程序时会自动更改值。

然而,对于Proguard,这不再适用了。例如。我有以下片段:

if (!BuildConfig.DEBUG) {
    ACRA.init(this);
}

Proguard注意到,DEBUG是真的,所以它完全删除了这个片段并缩小了应用程序。在ADT改变DEBUG之后,这已经太晚了。

我知道的唯一解决方案是创建自己的DEBUG常量并再次手动更改它。但我真的很喜欢ADT的功能。你知道更好的解决方案吗?

提前致谢。

修改

有一种解决方法。创建自己的DEBUG常量,该常量在运行时初始化:

debug = (0 != (getApplicationInfo().flags & ApplicationInfo.FLAG_DEBUGGABLE));

我在Application类的onCreate方法的第一个创建这个变量。这是一种可行的解决方法,但它不是解决问题的方法。

0 个答案:

没有答案