Warning: I removed a lot of \"old text\" to keep the question more clean. Just check the history if needed.
I\'m using proguard
to both
Try
-keep class com.facebook.** {
*;
}
The reason being, is that when specifying private, public, protected you're still opening up default (package private) access to obfuscation.
This may work (untested)
-keep class com.facebook.** { *; }
if you want to proguard Facebook, the config below is working for me
#modify for Facebook
-keepattributes Signature
-keep class com.facebook.model.** { *; }
-keepnames class * implements java.io.Serializable
-keepclassmembers class * implements java.io.Serializable {
static final long serialVersionUID;
private static final java.io.ObjectStreamField[] serialPersistentFields;
!static !transient <fields>;
private void writeObject(java.io.ObjectOutputStream);
private void readObject(java.io.ObjectInputStream);
java.lang.Object writeReplace();
java.lang.Object readResolve();
}
This will solve your problem, i hope:
And the winner is .....
-keepattributes Signature
From Proguard Homepage:
The "Signature" attribute is required to be able to access generic types when compiling in JDK 5.0 and higher.