Skip to content

fix: add ProGuard rules to prevent Crash in release builds#218

Open
Willie169 wants to merge 1 commit intomeenbeese:mainfrom
Willie169:main
Open

fix: add ProGuard rules to prevent Crash in release builds#218
Willie169 wants to merge 1 commit intomeenbeese:mainfrom
Willie169:main

Conversation

@Willie169
Copy link
Copy Markdown

Issue

Crash on create alarm (#216):

AndroidRuntime: FATAL EXCEPTION: main
AndroidRuntime: Process: com.meenbeese.chronos, PID: 12117
AndroidRuntime: java.lang.IllegalStateException: TypeToken must be created with a type argument: new TypeToken<...>() {}; When using code shrinkers (ProGuard, R8, ...) make sure that generic signatures are preserved.
AndroidRuntime: 	at ib.a.<init>(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:10)
AndroidRuntime: 	at a6.j0.<init>(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:7)
AndroidRuntime: 	at se.a.b(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:219)
AndroidRuntime: 	at yb.i.a(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:474)
AndroidRuntime: 	at yb.i.b(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:354)
AndroidRuntime: 	at wb.d.o(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:148)
AndroidRuntime: 	at m1.e.i(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:44)
AndroidRuntime: 	at m1.e.o(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:9)
AndroidRuntime: 	at a1.x3.g(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:3302)
AndroidRuntime: 	at m1.e.d(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:44)
AndroidRuntime: 	at m1.e.g(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:9)
AndroidRuntime: 	at e1.u.a(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:187)
AndroidRuntime: 	at e0.n.b(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:234)
AndroidRuntime: 	at c0.i.e(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:89)
AndroidRuntime: 	at a1.ba.g(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:490)
AndroidRuntime: 	at m1.e.d(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:44)
AndroidRuntime: 	at m1.e.g(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:9)
AndroidRuntime: 	at e1.u.b(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:150)
AndroidRuntime: 	at q1.c.a(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:175)
AndroidRuntime: 	at e0.a1.a(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:76)
AndroidRuntime: 	at e0.n.d(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:88)
AndroidRuntime: 	at a0.w.g(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:1245)
AndroidRuntime: 	at m1.e.d(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:44)
AndroidRuntime: 	at m1.e.g(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:9)
AndroidRuntime: 	at e1.t.n(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:93)
AndroidRuntime: 	at e1.a0.j(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:37)
AndroidRuntime: 	at e1.a2.a(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:78)
AndroidRuntime: 	at e1.r.a(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:5)
AndroidRuntime: 	at e1.r.a(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:5)
AndroidRuntime: 	at e1.a0.B(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:28)
AndroidRuntime: 	at r2.l0.m(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:267)
AndroidRuntime: 	at r2.e0.n(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:171)
AndroidRuntime: 	at e0.f0.a(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:30)
AndroidRuntime: 	at e0.h0.d(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:14)
AndroidRuntime: 	at c0.j.j(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:21)
AndroidRuntime: 	at c0.k.b(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:665)
AndroidRuntime: 	at c0.k.a(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:2092)
AndroidRuntime: 	at a0.w.g(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:1152)
AndroidRuntime: 	at r2.g0.f(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:71)
AndroidRuntime: 	at t2.r.e(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:38)
AndroidRuntime: 	at a2.r0.d(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:1)
AndroidRuntime: 	at t2.x.e(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:11)
AndroidRuntime: 	at e0.q.d(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:1)
AndroidRuntime: 	at t2.x.e(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:11)
AndroidRuntime: 	at a0.g0.d(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:105)
AndroidRuntime: 	at t2.x.e(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:11)
AndroidRuntime: 	at t2.t0.b(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:99)
AndroidRuntime: 	at r1.s.c(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:251)
AndroidRuntime: 	at t2.u0.B0(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:147)
AndroidRuntime: 	at t2.u0.e(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:99)
AndroidRuntime: 	at a.a.A(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:39)
AndroidRuntime: 	at f0.r.a(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:652)
AndroidRuntime: 	at a0.w.g(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:1152)
AndroidRuntime: 	at r2.g0.f(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:71)
AndroidRuntime: 	at t2.r.e(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:38)
AndroidRuntime: 	at a2.r0.d(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:1)
AndroidRuntime: 	at t2.x.e(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:11)
AndroidRuntime: 	at e0.q.d(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:1)
AndroidRuntime: 	at t2.x.e(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:11)
AndroidRuntime: 	at a0.g0.d(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:105)
AndroidRuntime: 	at t2.x.e(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:11)
AndroidRuntime: 	at t2.t0.b(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:99)
AndroidRuntime: 	at r1.s.c(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:314)
AndroidRuntime: 	at t2.u0.B0(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:147)
AndroidRuntime: 	at t2.e0.P(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:18)
AndroidRuntime: 	at t2.e0.Q(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:18)
AndroidRuntime: 	at t2.s0.c(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:8)
AndroidRuntime: 	at t2.s0.m(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:124)
AndroidRuntime: 	at t2.s0.j(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:160)
AndroidRuntime: 	at u2.s.u(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:36)
AndroidRuntime: 	at u2.s.dispatchDraw(r8-map-id-1fcef63a14b58a3eacfdddfad264ff495fb0e99f165d718e45d8b4c31f5ed4d7:15)
AndroidRuntime: 	at android.view.View.draw(View.java:26345)
AndroidRuntime: 	at android.view.View.updateDisplayListIfDirty(View.java:25175)
AndroidRuntime: 	at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4794)
AndroidRuntime: 	at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4766)
AndroidRuntime: 	at android.view.View.updateDisplayListIfDirty(View.java:25119)
AndroidRuntime: 	at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4794)
AndroidRuntime: 	at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4766)
AndroidRuntime: 	at android.view.View.updateDisplayListIfDirty(View.java:25119)
AndroidRuntime: 	at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4794)
AndroidRuntime: 	at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4766)
AndroidRuntime: 	at android.view.View.updateDisplayListIfDirty(View.java:25119)
AndroidRuntime: 	at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4794)
AndroidRuntime: 	at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4766)
AndroidRuntime: 	at android.view.View.updateDisplayListIfDirty(View.java:25119)
AndroidRuntime: 	at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:694)
AndroidRuntime: 	at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:700)
AndroidRuntime: 	at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:798)
AndroidRuntime: 	at android.view.ViewRootImpl.draw(ViewRootImpl.java:7016)
AndroidRuntime: 	at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:6632)
AndroidRuntime: 	at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:5531)
AndroidRuntime: 	at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:3924)
AndroidRuntime: 	at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:12903)
AndroidRuntime: 	at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1901)
AndroidRuntime: 	at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1910)
AndroidRuntime: 	at android.view.Choreographer.doCallbacks(Choreographer.java:1367)
AndroidRuntime: 	at android.view.Choreographer.doFrame(Choreographer.java:1292)
AndroidRuntime: 	at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1870)
AndroidRuntime: 	at android.os.Handler.handleCallback(Handler.java:995)
AndroidRuntime: 	at android.os.Handler.dispatchMessage(Handler.java:103)
AndroidRuntime: 	at android.os.Looper.loopOnce(Looper.java:273)
AndroidRuntime: 	at android.os.Looper.loop(Looper.java:363)
AndroidRuntime: 	at android.app.ActivityThread.main(ActivityThread.java:10060)
AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)
AndroidRuntime: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:632)
AndroidRuntime: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:975)

ClassCastException:

AndroidRuntime: FATAL EXCEPTION: main
AndroidRuntime: Process: com.meenbeese.chronos, PID: 30410
AndroidRuntime: java.lang.ClassCastException
AndroidRuntime: 	at xn3.d(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:10)
AndroidRuntime: 	at ox0.f(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:547)
AndroidRuntime: 	at ox0.<init>(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:63)
AndroidRuntime: 	at lp.i(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:246)
AndroidRuntime: 	at tj2.a(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:496)
AndroidRuntime: 	at i94.a(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:470)
AndroidRuntime: 	at c8.m(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:310)
AndroidRuntime: 	at q70.i(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:42)
AndroidRuntime: 	at q70.m(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:9)
AndroidRuntime: 	at t50.h(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:3174)
AndroidRuntime: 	at q70.d(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:42)
AndroidRuntime: 	at q70.h(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:9)
AndroidRuntime: 	at i94.g(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:173)
AndroidRuntime: 	at pg0.c(Unknown Source:234)
AndroidRuntime: 	at dx1.b(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:89)
AndroidRuntime: 	at r.h(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:210)
AndroidRuntime: 	at q70.d(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:42)
AndroidRuntime: 	at q70.h(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:9)
AndroidRuntime: 	at i94.h(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:214)
AndroidRuntime: 	at ha3.b(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:154)
AndroidRuntime: 	at lx1.b(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:76)
AndroidRuntime: 	at j6.f(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:87)
AndroidRuntime: 	at k.h(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:611)
AndroidRuntime: 	at q70.d(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:42)
AndroidRuntime: 	at q70.h(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:9)
AndroidRuntime: 	at r90.n(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:93)
AndroidRuntime: 	at ha0.j(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:37)
AndroidRuntime: 	at r33.a(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:75)
AndroidRuntime: 	at p90.a(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:5)
AndroidRuntime: 	at p90.a(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:5)
AndroidRuntime: 	at ha0.B(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:28)
AndroidRuntime: 	at iu1.m(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:268)
AndroidRuntime: 	at cu1.H(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:171)
AndroidRuntime: 	at hw1.a(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:30)
AndroidRuntime: 	at d90.d(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:14)
AndroidRuntime: 	at ex1.j(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:21)
AndroidRuntime: 	at yu1.a(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:647)
AndroidRuntime: 	at k.h(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:514)
AndroidRuntime: 	at eu1.g(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:71)
AndroidRuntime: 	at rl1.f(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:38)
AndroidRuntime: 	at qj3.d(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:1)
AndroidRuntime: 	at ot1.f(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:11)
AndroidRuntime: 	at tv1.d(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:1)
AndroidRuntime: 	at ot1.f(r8-map-id-141bfca98e3ecd23babae6333f2e65062c1d9de571f0f699b533b97e2aeb2b98:11)

Solution

Add

-keepattributes Signature, InnerClasses, EnclosingMethod

-keep class com.google.gson.reflect.TypeToken { *; }
-keep class * extends com.google.gson.reflect.TypeToken
-keep class **$* extends com.google.gson.reflect.TypeToken { *; }

-keep class dev.alexdametto.compose_emoji_picker.** { *; }
-keepclassmembers class dev.alexdametto.compose_emoji_picker.** { *; }

to app/proguard-rules.pro.

This makes the release build not crash.

@meenbeese
Copy link
Copy Markdown
Owner

Thanks for the PR. How is gson related to the crash? Is it a transitive dependency?

@Willie169
Copy link
Copy Markdown
Author

I don't know why but removing it will cause the TypeToken must be created with a type argument crash.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants