阅读proguard上的文档。..androiddocs我应该有一个ProGuard.cfg,因为它说..."创建Android项目时,会在项目根目录下自动生成一个proguard.cfg文件。"如果我用谷歌搜索这个问题,到处都有答案,其中大多数人说要修改一个以警告不要修改文件开头的文件。文档过时了吗?如何为发布版本启用此功能?谢谢,加里 最佳答案 如果您使用ADT17ornewer,文档略有不准确。生成的文件是proguard-project.txt,将在你项目的根目录下。要启用Proguard,您需要忽略project.prop
阅读proguard上的文档。..androiddocs我应该有一个ProGuard.cfg,因为它说..."创建Android项目时,会在项目根目录下自动生成一个proguard.cfg文件。"如果我用谷歌搜索这个问题,到处都有答案,其中大多数人说要修改一个以警告不要修改文件开头的文件。文档过时了吗?如何为发布版本启用此功能?谢谢,加里 最佳答案 如果您使用ADT17ornewer,文档略有不准确。生成的文件是proguard-project.txt,将在你项目的根目录下。要启用Proguard,您需要忽略project.prop
我有一个使用外部引用库的应用程序(即,库的目录与应用程序处于同一级别-它不会复制到应用程序的文件夹中)。该库由应用程序引用,并且该库和应用程序都包含proguard文件。在我构建应用程序之前一切正常。当我构建应用程序时,没有找到对库中定义的类的所有引用-我在库类的所有导入中都出现“找不到符号类...)错误。正如我发现的那样,这是因为在重建应用程序时,proguard混淆了所有类和变量,因此应用程序无法引用它们。我已将以下内容添加到我的build.gradle文件中,buildTypes{release{minifyEnabledtrueproguardFilesgetDefaultPr
我有一个使用外部引用库的应用程序(即,库的目录与应用程序处于同一级别-它不会复制到应用程序的文件夹中)。该库由应用程序引用,并且该库和应用程序都包含proguard文件。在我构建应用程序之前一切正常。当我构建应用程序时,没有找到对库中定义的类的所有引用-我在库类的所有导入中都出现“找不到符号类...)错误。正如我发现的那样,这是因为在重建应用程序时,proguard混淆了所有类和变量,因此应用程序无法引用它们。我已将以下内容添加到我的build.gradle文件中,buildTypes{release{minifyEnabledtrueproguardFilesgetDefaultPr
我这几天都面临着一个非常奇怪的问题......我有一个带有两个模块的Gradle应用程序,一个主模块和一个库模块。在这两个模块中,我都声明了一个正确的proguard-rules.pro文件路径在两个.gradle文件中我都设置了minifyEnabledtrue这是第一个问题:即使库中的minifyEnabled为false,它也会被混淆。它根本没有效果,似乎取决于主模块的设置。我使用proguard已经有一段时间了,我从来没有遇到过这样的行为。此外,图书馆的proguard-rules.pro似乎完全被忽略了。我在那里声明什么都没关系,它没有被使用,结果总是相同的(总是反编译以查看
我这几天都面临着一个非常奇怪的问题......我有一个带有两个模块的Gradle应用程序,一个主模块和一个库模块。在这两个模块中,我都声明了一个正确的proguard-rules.pro文件路径在两个.gradle文件中我都设置了minifyEnabledtrue这是第一个问题:即使库中的minifyEnabled为false,它也会被混淆。它根本没有效果,似乎取决于主模块的设置。我使用proguard已经有一段时间了,我从来没有遇到过这样的行为。此外,图书馆的proguard-rules.pro似乎完全被忽略了。我在那里声明什么都没关系,它没有被使用,结果总是相同的(总是反编译以查看
我包括thisProGuardconfiguration在我发布Android应用程序时删除调试日志语句:-assumenosideeffectsclassandroid.util.Log{publicstatic***d(...);publicstatic***v(...);}这按预期工作——我可以从ProGuard日志和Android日志输出中看到,诸如Log.d("Thisisadebugstatement");之类的调用已被删除。但是,如果我在这个阶段反编译应用程序,我仍然可以看到所有使用的String字面量——即在本示例中为Thisisadebugstatement。有没有办
我包括thisProGuardconfiguration在我发布Android应用程序时删除调试日志语句:-assumenosideeffectsclassandroid.util.Log{publicstatic***d(...);publicstatic***v(...);}这按预期工作——我可以从ProGuard日志和Android日志输出中看到,诸如Log.d("Thisisadebugstatement");之类的调用已被删除。但是,如果我在这个阶段反编译应用程序,我仍然可以看到所有使用的String字面量——即在本示例中为Thisisadebugstatement。有没有办
我和Gson和ProGuard玩得很开心。我有一个简单的对象,当我解析tojson、保存到sqllite并从数据库中读回以便将json加载回我的对象时,我得到一个java.lang.classcastexception。如果我不使用ProGuard,一切正常。我已验证发送到数据库和从数据库获取的json字符串是相同的。从json转换时不会抛出异常,而是当我尝试访问对象时。这是我的简单对象:publicclassScanLogextendsArrayList{privatestaticfinallongserialVersionUID=1L;publicScanLog(){}}pub
我和Gson和ProGuard玩得很开心。我有一个简单的对象,当我解析tojson、保存到sqllite并从数据库中读回以便将json加载回我的对象时,我得到一个java.lang.classcastexception。如果我不使用ProGuard,一切正常。我已验证发送到数据库和从数据库获取的json字符串是相同的。从json转换时不会抛出异常,而是当我尝试访问对象时。这是我的简单对象:publicclassScanLogextendsArrayList{privatestaticfinallongserialVersionUID=1L;publicScanLog(){}}pub