R8 ignores ProGuard option "useuniqueclassmembernames". Alternatives?

Viewed 465

At some point in the past ProGuard seemed to ignore the rule "useuniqueclassmembernames" making it almost impossible for me to read stack traces of crashes my app users encountered. I just happened to learn now, that at some point they swapped ProGuard with R8, which is now the standard optimizer/obfuscator (please correct me if I am wrong). The unofficial R8 documentation (https://r8-docs.preemptive.com/) states that several ProGuard rules are being ignored

The following rules are ignored:

-addconfigurationdebugging
-android
-assumenoescapingparameters
-assumenoexternalreturnvalues
-assumenoexternalsideefffects
-dontpreverify
-dontskipnonpubliclibraryclasses
-dontskipnonpubliclibraryclassmembers
-dontusemixedcaseclassnames
-dump
-forceprocessing
-keepparameternames
-mergeinterfacesaggressively
-outjars
-target
-useuniqueclassmembernames
-verbose

This is causing a lot of troubles for me. As a workaround I am now using the option of

android.enableR8=false

which is being flagged as deprecated and not recommended.

Is there any way to have the effect of useuniqueclassmembernames using R8?

0 Answers
Related