Proguard在java.lang.StringBuilder中找不到方法

时间:2012-02-22 10:40:07

标签: android methods proguard

我在开发中有一个Android应用程序,我经常使用Proguard代码混淆创建签名的APK。直到今天,当Proguard出现这些警告时,一切都进展顺利

Warning: org.acra.CrashReportData: can't find referenced method 'void setLength(int)' in class java.lang.StringBuilder

我从来没有在ACRA或它的类中改变过任何东西,我确定它没有触及java.lang.StringBuilder类中的任何东西,但是Proguard正在显示这个警告并最终给出一个错误声明我应该首先修复警告......

怎么办?这真是奇怪,因为它从无到有!

2 个答案:

答案 0 :(得分:1)

面临同样的问题。谷歌搜索后,找到以下链接。

https://svn.concord.org/svn/projects/vendor/phet/current/simulations-java/build-tools/proguard3.8/docs/manual/troubleshooting.html

刚刚在我的ant buildscript中添加了这一行,它确实有效。

-dontskipnonpubliclibraryclasses

答案 1 :(得分:0)

我找到了一个解决方案,但这对我来说似乎有点尴尬......我试图按照我之前尝试导出已签名包的步骤,并指导我解决方案的一步是我下载了一个新版本的Android SDK,所有SDK都达到API级别16,并在我的Eclipse项目中将其用作我的新Android SDK。

一旦我使用了我的“旧”SDK,它只支持版本直到API级别13,一切顺利,并且像之前一样顺利......?