我有一个使用外部引用库的应用程序(即,库的目录与应用程序处于同一级别-它不会复制到应用程序的文件夹中)。该库由应用程序引用,并且该库和应用程序都包含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
我在使用-dontobfuscate标志时收到错误消息“转换为Dalvik格式失败,出现错误1”。否则我的应用程序导出正常。我不想混淆,因为我使用BugSense进行错误跟踪,如果您需要对堆栈跟踪进行去混淆,他们每月收费99美元。我仍然想获得proguard的文件大小和优化优势。如果我注释掉-dontobfuscate,每件事都很好。除了不可读的堆栈跟踪。我的progaurd.cfg文件:-dontobfuscate-optimizationpasses5-dontusemixedcaseclassnames-dontskipnonpubliclibraryclasses-dontpr
我在使用-dontobfuscate标志时收到错误消息“转换为Dalvik格式失败,出现错误1”。否则我的应用程序导出正常。我不想混淆,因为我使用BugSense进行错误跟踪,如果您需要对堆栈跟踪进行去混淆,他们每月收费99美元。我仍然想获得proguard的文件大小和优化优势。如果我注释掉-dontobfuscate,每件事都很好。除了不可读的堆栈跟踪。我的progaurd.cfg文件:-dontobfuscate-optimizationpasses5-dontusemixedcaseclassnames-dontskipnonpubliclibraryclasses-dontpr