【发布时间】:2014-10-06 17:14:34
【问题描述】:
在尝试为 amazon s3 实现 proguard 时遇到一个真正的问题,它在第 29 行加载应用程序时一直崩溃
s3Client = new AmazonS3Client(new BasicAWSCredentials(
Constants.ACCESS_KEY_ID, Constants.SECRET_KEY));
这是错误的堆栈跟踪,不知道诚实意味着什么可以获得更好的堆栈跟踪或有关如何修复它的任何建议?
Process: com.closr.closr, PID: 24517
java.lang.NoSuchFieldError: PUBLIC_ONLY
at java.lang.Class.getDeclaredAnnotation(Native Method)
at java.lang.Class.getAnnotation(Class.java:290)
at com.b.a.c.f.u$a.<clinit>(VisibilityChecker.java:172)
at com.b.a.c.r.<clinit>(ObjectMapper.java:195)
at com.a.l.a.a.<clinit>(Unknown Source)
at com.a.e.a.c.loadfrom(Unknown Source)
at com.a.e.a.c.load(Unknown Source)
at com.a.e.a.c$a.<clinit>(Unknown Source)
at com.a.o.getServiceName(Unknown Source)
at com.a.c.computeServiceName(Unknown Source)
at com.a.c.getServiceNameIntern(Unknown Source)
at com.a.c.configSigner(Unknown Source)
at com.a.c.setEndpoint(Unknown Source)
at com.a.j.a.a.init(Unknown Source)
at com.a.j.a.a.<init>(Unknown Source)
at com.a.j.a.a.<init>(Unknown Source)
at com.closr.closr.MainApplication.onCreate(MainApplication.java:29)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1007)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4328)
at android.app.ActivityThread.access$1500(ActivityThread.java:135)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5001)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
at dalvik.system.NativeStart.main(Native Method)
这是我的 proguard.cfg
-dontusemixedcaseclassnames
-dontskipnonpubliclibraryclasses
-verbose
-dontoptimize
-dontpreverify
-dontwarn
-keepattributes *Annotation*,Exceptions,InnerClasses,Signature,Deprecated, SourceFile,LineNumberTable,*Annotation*,EnclosingMethod
-keep public class com.google.vending.licensing.ILicensingService
-keep public class com.android.vending.licensing.ILicensingService
-keep public class org.apache.commons.** { *; }
-keep public class * extends android.app.Application
-keepnames class org.codehaus.jackson.** { *; }
-keepclassmembers class com.amazonaws.** { *; }
-keepclassmembers class com.closr.closr.** {
public static <fields>;
}
-keepclasseswithmembernames class * {
native <methods>;
}
-keepclassmembers public class * extends android.view.View {
void set*(***);
*** get*();
}
-keepclassmembers class * extends android.app.Activity {
public void *(android.view.View);
}
-keepclassmembers enum * {
public static **[] values();
public static ** valueOf(java.lang.String);
}
-keep class * implements android.os.Parcelable {
public static final android.os.Parcelable$Creator *;
}
-keepclassmembers class **.R$* {
public static <fields>;
}
【问题讨论】:
标签: android amazon-web-services amazon-s3 proguard