garretyoder / Colorful

Android runtime theme library
Apache License 2.0
2.13k stars 193 forks source link

Does Proguard settings mentioned in document? #40

Open cyberrob-zz opened 6 years ago

cyberrob-zz commented 6 years ago

I tries build a release build of my app and app crashed while start:

Fatal Exception: java.lang.AssertionError: impossible
       at java.lang.Enum$1.create(Enum.java:272)
       at java.lang.Enum$1.create(Enum.java:263)
       at libcore.util.BasicLruCache.get(BasicLruCache.java:58)
       at java.lang.Enum.getSharedConstants(Enum.java:289)
       at java.lang.Enum.valueOf(Enum.java:244)
       at io.multimoon.colorful.ThemeColor.valueOf(Unknown Source:2)
       at io.multimoon.colorful.ThemeColorInterface$Companion.parse(ThemeColor.kt:18)
       at io.multimoon.colorful.ColorfulKt.initColorful(Colorful.kt:29)
       at com.noodoe.nexlogistics.LogisticsApp.onCreate(LogisticsApp.kt:53)
       at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1119)
       at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5740)
       at android.app.ActivityThread.-wrap1(Unknown Source)
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1656)
       at android.os.Handler.dispatchMessage(Handler.java:106)
       at android.os.Looper.loop(Looper.java:164)
       at android.app.ActivityThread.main(ActivityThread.java:6494)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)

Caused by java.lang.NoSuchMethodException: values []
       at java.lang.Class.getMethod(Class.java:2068)
       at java.lang.Class.getDeclaredMethod(Class.java:2047)
       at java.lang.Enum$1.create(Enum.java:268)
       at java.lang.Enum$1.create(Enum.java:263)
       at libcore.util.BasicLruCache.get(BasicLruCache.java:58)
       at java.lang.Enum.getSharedConstants(Enum.java:289)
       at java.lang.Enum.valueOf(Enum.java:244)
       at io.multimoon.colorful.ThemeColor.valueOf(Unknown Source:2)
       at io.multimoon.colorful.ThemeColorInterface$Companion.parse(ThemeColor.kt:18)
       at io.multimoon.colorful.ColorfulKt.initColorful(Colorful.kt:29)
       at com.noodoe.nexlogistics.LogisticsApp.onCreate(LogisticsApp.kt:53)
       at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1119)
       at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5740)
       at android.app.ActivityThread.-wrap1(Unknown Source)
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1656)
       at android.os.Handler.dispatchMessage(Handler.java:106)
       at android.os.Looper.loop(Looper.java:164)
       at android.app.ActivityThread.main(ActivityThread.java:6494)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)

So I added these proguard settings to make app open successfully:

-keep class io.multimoon.colorful.** { *; }
-dontwarn io.multimoon.colorful.**

Does anyone have other ideas?