Fixed
Status Update
Comments
il...@google.com <il...@google.com>
il...@google.com <il...@google.com> #2
since these are in public API (:/) we need to do this in 1.2
ap...@google.com <ap...@google.com> #3
since it is already marked as deprecated, we can probably do it by now.
Description
Component used: Navigation Safe Args Kotlin Plugin
Version used: 2.4.0-alpha02, AGP 4.2.0-beta03
After upgrading to Navigation 2.4.0-alpha02 and building a minified version of my app , my app crashed with an exception that said that the
fromBundle
method couldn't be found.I use the
by navArgs()
extension, which uses reflection to access this method, so I depended on Navigation's included ProGuard keep rules to properly keep that method.I found that I could work around this issue via this commit :
Essentially just making sure that the
Companion
class is kept. After adding that ProGuard rule, thefromBundle()
class was successfully kept. I'm not sure why that helped, since I'm pretty sure that the format of thefromBundle()
didn't change since Navigation 2.3.5?Reproduction steps:
minifyEnabled true
to the./gradlew assembleDebug
and analyze the resulting APK to verify that theChooseProviderFragmentArgs.fromBundle()
method exists (it won't) 4a) Alternatively, install Muzei, Activate it as your wallpaper, then select the 'Sources' screen. Muzei should not crash.