如何在proguard中禁用方法内联?

问题描述 投票:0回答:1

我的应用程序仅在Android 4.4上因此错误而崩溃

致命异常:nTa:java.lang.IllegalAccessError:尝试从类Patient.healofy.vivoiz.com.healofy.userprofile.contactsync.ContactSyncManager访问类dUa $ a []在io.reactivex.plugins.RxJavaPlugins.onError + 367(RxJavaPlugins.java:367)在io.reactivex.internal.schedulers.ScheduledRunnable.run + 69(ScheduledRunnable.java:69)在io.reactivex.internal.schedulers.ScheduledRunnable.call + 57(ScheduledRunnable.java:57)在java.util.concurrent.FutureTask.run + 237(FutureTask.java:237)在java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.access $ 201 + 152(ScheduledThreadPoolExecutor.java:152)在java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.run + 265(ScheduledThreadPoolExecutor.java:265)在java.util.concurrent.ThreadPoolExecutor.runWorker + 1112(ThreadPoolExecutor.java:1112)在java.util.concurrent.ThreadPoolExecutor $ Worker.run + 587(ThreadPoolExecutor.java:587)在java.lang.Thread.run + 841(Thread.java:841)

我发现这是由于ProGuard方法内联而发生的。

我想禁用这两个:

方法/内联/短内联短方法。方法/内联/唯一内联仅调用一次的方法。

我尚未专门启用它们。

详细答案:https://medium.com/@ericluapp/a-journey-of-an-illegalaccesserror-issue-2c29b6ea968d

proguard android-4.4-kitkat illegalaccessexception
1个回答
0
投票

为了完全禁用方法内联,您可以将其添加到配置中

-optimizations !method/inlining/*

© www.soinside.com 2019 - 2024. All rights reserved.