在哪里可以找到与proguard相关的Android构建选项文档

在哪里可以找到与proguard相关的Android构建选项文档,android,build,build-process,proguard,Android,Build,Build Process,Proguard,我在android构建系统上做了很多工作,遇到了proguard删除必需类导致NoClassDefFoundError的情况。我可以说找不到该类,但我花了一段时间才发现proguard把用我的代码构建的类搞乱了 我最终发现,通过向Android.mk文件添加LOCAL\u proguard\u ENABLED:=disabled,可以阻止proguard运行 我之所以能够这样做,是因为我碰巧访问了其他人的Android.mk文件,该文件也做了同样的操作 我无法找到以下内容的任何文档 LOCAL_

我在android构建系统上做了很多工作,遇到了proguard删除必需类导致NoClassDefFoundError的情况。我可以说找不到该类,但我花了一段时间才发现proguard把用我的代码构建的类搞乱了

我最终发现,通过向Android.mk文件添加
LOCAL\u proguard\u ENABLED:=disabled
,可以阻止proguard运行

我之所以能够这样做,是因为我碰巧访问了其他人的Android.mk文件,该文件也做了同样的操作

我无法找到以下内容的任何文档

LOCAL_PROGUARD_FLAGS
LOCAL_PROGUARD_ENABLED
LOCAL_PROGUARD_FLAG_FILES
据我所知,
LOCAL\u PROGUARD\u FLAGS
的典型用法是识别PROGUARD配置文件的位置,如下所示:

LOCAL_PROGUARD_FLAGS := -include $(LOCAL_PATH)/proguard.flags
LOCAL_PROGUARD_FLAG_FILES := proguard.flags
问题是我无法找出它与如下使用的
LOCAL\u PROGUARD\u FLAG\u文件的区别:

LOCAL_PROGUARD_FLAGS := -include $(LOCAL_PATH)/proguard.flags
LOCAL_PROGUARD_FLAG_FILES := proguard.flags
LOCAL\u PROGUARD\u ENABLED
可用于禁用PROGUARD,但是除了
disabled
选项之外,我不知道该选项还能使用什么

LOCAL_PROGUARD_ENABLED := disabled

有人知道我在哪里可以找到这些构建选项的文档(官方或非官方)吗?谷歌似乎没有返回任何对我搜索有用的信息。

我也搜索了这些信息,偶然发现了这个补丁:

Now the meaning of the LOCAL_PROGUARD_ENABLED options: * full: Use the build system's default configurations: with shrink but no obfuscation or optimization, global proguard flags in build/core/proguard.flags are applied. * custom: The same as "full" except no aapt-generated resource-related proguard flags. * nosystem: Don't use any build system's default configurations; but aapt-generated proguard flags are still applied. You are responsible for any other flags. * disabled: Disable proguard. * obfuscation: The same as "full" but with obfuscation enabled. * optimization: The same as "full" but with optimization enabled. * no value (the default): The build system chooses the proper value: "full" if it's an app; "disabled" if it's a library. 现在,本地\u PROGUARD\u启用选项的含义如下: *全部: 使用生成系统的默认配置: 具有收缩功能,但没有模糊或优化功能, build/core/proguard.flags中的全局proguard标志 都适用。 *自定义: 与“完全”相同,只是没有aapt生成的相关资源 前进旗。 *医院系统: 不要使用任何构建系统的默认配置;但是 aapt生成的proguard标志仍然适用。你是 负责任何其他旗帜。 *残疾人士: 禁用proguard。 *混淆: 与“完整”相同,但启用了模糊处理。 *优化: 与“完全”相同,但启用了优化。 *无值(默认值): 构建系统选择适当的值:“full”,如果是 应用程序;如果是库,则为“禁用”。 以下是链接:

您阅读过Android开发网站上的Proguard文档吗?特别是配置Proguard和使用
-keep
以防止它剥离某些类?@Squonk是的,我已经阅读了您链接到的文档。不幸的是,那些文件已经过时了。随着ADT 17的发布,proguard的使用方式发生了变化。请参阅:。这些文档都没有提到我最初询问的三个Android.mk构建选项。我必须进行实验,以找到一个有效的解决方案。如果我能找到一些文档的话,我会节省几个小时。它还将有助于验证我的解决方案是否是最佳解决方案。