I've been going through this issue for two days now. I've built my Release APK successfully, but when I tested this APK in a device, I got this exception:
java.lang.VerifyError: Verifier rejected class m.a due to bad method void m.a.a(android.support.v4.app.Fragment, int, int) (declaration of 'm.a' appears in /data/app/com.picmix.mobile-1/base.apk)
at m.a.e(outline)
at a.b.g.a.<clinit>(SourceFile:7)
at a.b.g.b.attachBaseContext(SourceFile:2)
at android.app.Application.attach(Application.java:187)
at android.app.Instrumentation.newApplication(Instrumentation.java:996)
at android.app.Instrumentation.newApplication(Instrumentation.java:980)
at android.app.LoadedApk.makeApplication(LoadedApk.java:582)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4766)
at android.app.ActivityThread.access$1900(ActivityThread.java:152)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1402)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5538)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:960)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)
I've traced this m.a
in the proguard mappings.txt file generated in the build folders, and apparently it points to r8.GeneratedOutlineSupport
.
Every other search result for m.a
points to that in the middle of the class path, not the entire class path. So, if I'm not mistaken, this means a part of the code/resource shrinker is going to generate that error.
What is this GeneratedOutlineSupport
in the first place, and should I just put -keep r8.GeneratedOutlineSupport.*
or something alike as a workaround?
EDIT: I suppose I can just use Proguard for the time being.