frankiesardo / icepick

Android Instance State made easy
Eclipse Public License 1.0
3.75k stars 208 forks source link

Proguard error #55

Closed danielgomezrico closed 9 years ago

danielgomezrico commented 9 years ago

I get this when I run the project

Dependecies:

compile 'frankiesardo:icepick:3.0.2'
provided 'frankiesardo:icepick-processor:3.0.2'

My proguard:


-dontobfuscate

# okhttp
-dontwarn com.squareup.okhttp.internal.**

# butterknife
-keep class butterknife.** { *; }
-dontwarn butterknife.internal.**
-keep class **$$ViewInjector { *; }

-keepclasseswithmembernames class * { @butterknife.* <fields>; }
-keepclasseswithmembernames class * { @butterknife.* <methods>; }

# Joda
-dontwarn org.joda.convert.**
-dontwarn org.joda.time.tz.DateTimeZoneBuilder$PrecalculatedZone

# EventBus
-keepclassmembers class ** { public void onEvent*(**); }

# Only required if you use AsyncExecutor
-keepclassmembers class * extends de.greenrobot.event.util.ThrowableFailureEvent {
    <init>(java.lang.Throwable);
}

# Glide
-keep public class * implements com.bumptech.glide.module.GlideModule
-keep public enum com.bumptech.glide.load.resource.bitmap.ImageHeaderParser$** {
    **[] $VALUES;
    public *;
}
-keep class com.bumptech.glide.integration.okhttp.OkHttpGlideModule

# AppCompat
-dontwarn android.support.v7.**
-keep class android.support.v7.** { *; }
-keep interface android.support.v7.** { *; }

# superrecyclerview
-dontwarn com.malinskiy.superrecyclerview.SwipeDismissRecyclerViewTouchListener*

# leakcanary
-keep class org.eclipse.mat.** { *; }
-keep class com.squareup.leakcanary.** { *; }

# Craslytics https://dev.twitter.com/crashlytics/android/proguard-dexguard
-keepattributes SourceFile,LineNumberTable

# Icepick
#-dontwarn icepick.processor.**
#-keep class **$$Icicle { *; }
#-keepnames class * { @icepick.Icicle *; }
-dontwarn icepick.**
-keep class **$$Icicle { *; }
-keepnames class * { @icepick.Icicle *;}
-keepclasseswithmembernames class * { @icepick.* <fields>; }

Error:

      (http://proguard.sourceforge.net/manual/troubleshooting.html#duplicateclass)
Warning:library class com.google.auto.common.MoreTypes$1 extends or implements program class com.google.common.base.Equivalence
Warning:there were 1 instances of library classes depending on program classes.
         You must avoid such dependencies, since the program classes will
         be processed, while the library classes will remain unchanged.
         (http://proguard.sourceforge.net/manual/troubleshooting.html#dependency)
:app:proguardDebug FAILED
Error:Execution failed for task ':app:proguardDebug'.
> java.io.IOException: Please correct the above warnings first.
danielgomezrico commented 9 years ago

It´s related to this https://github.com/pushbit/sprockets-android/issues/8#issuecomment-104657040.

If I use sprockets-android library and then add Icepick that happens.