Skip navigation

For typical Android App with holoEverywhere and Facebook login. When you receive:

. Android is limited to 65535 methods per classes.dex
 You can either remove some methodor use a secondary framework .”

So you can use proguard this is the configuration that finally worked for me:

-optimizationpasses 5
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*,!code/allocation/variable

-keep public class * extends
-keep public class * extends
-keep public class * extends
-keep public class * extends android.content.BroadcastReceiver
-keep public class * extends android.content.ContentProvider
-keep public class * extends
-keep public class * extends android.preference.Preference
-keep public class

#modify for Facebook
-keepattributes Signature
-keep class com.facebook.model.** { *; }

-keepnames class * implements
-keepclassmembers class * implements {
    static final long serialVersionUID;
    private static final[] serialPersistentFields;
    !static !transient <fields>;
    private void writeObject(;
    private void readObject(;
    java.lang.Object writeReplace();
    java.lang.Object readResolve();

-keepclasseswithmembernames class * {
    native <methods>;

-keepclasseswithmembers class * {
    public <init>(android.content.Context, android.util.AttributeSet);

-keepclasseswithmembers class * {
    public <init>(android.content.Context, android.util.AttributeSet, int);

-keepclassmembers class * extends {
   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 *;
#Important ActionBar uses reflection methods
-keepclassmembers class * extends com.actionbarsherlock.ActionBarSherlock {
    <init>(, int);

-dontwarn org.joda.**

-keep class com.actionbarsherlock.**
-keep class org.holoeverywhere.**
-keep class**
-keep class org.apache.**
-keep class com.commonsware.**