You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Minimize app, look at logcat. androidx.lifecycle.BundlableSavedStateRegistry.key takes 3.6 KB
In sanbox navigate back and forth to NavModel Examples
Minimize app again, now androidx.lifecycle.BundlableSavedStateRegistry.key takes much more than 3.6 KB
What's wrong:
If you'll take a look into saved bundle, you can see that even disposed Nodes still keeps some of their data in saved state registry
Thus, more we navigates through the app, more garbage collected in SavedStateRegistry, and at some point it causes TransactionTooLargeException after app pausing
You can find saved NavKeys and some data in output bundle using debugger: (outputBundle.getBundle("androidx.lifecycle.BundlableSavedStateRegistry.key").get("SaveableStateRegistry:-1") as BaseBundle)
Than mMap -> values[0] -> [0]
Want to notice that in sample app overhead after each navigation isn't that big, but in my app (may be because of NavTarget data size) each navigation takes much more memory
The text was updated successfully, but these errors were encountered:
How to reproduce:
androidx.lifecycle.BundlableSavedStateRegistry.key
takes3.6 KB
androidx.lifecycle.BundlableSavedStateRegistry.key
takes much more than3.6 KB
What's wrong:
If you'll take a look into saved bundle, you can see that even disposed Nodes still keeps some of their data in saved state registry
Thus, more we navigates through the app, more garbage collected in
SavedStateRegistry
, and at some point it causesTransactionTooLargeException
after app pausingYou can find saved
NavKeys
and some data in output bundle using debugger:(outputBundle.getBundle("androidx.lifecycle.BundlableSavedStateRegistry.key").get("SaveableStateRegistry:-1") as BaseBundle)
Than
mMap -> values[0] -> [0]
My assumption what's wrong (i might be way off):
Appyx registers
SaveableStateProvider
https://github.com/bumble-tech/appyx/blob/1.x/libraries/core/src/main/kotlin/com/bumble/appyx/core/composable/Child.kt#L46 but never unregisters it, neither Compose doesWant to notice that in sample app overhead after each navigation isn't that big, but in my app (may be because of NavTarget data size) each navigation takes much more memory
The text was updated successfully, but these errors were encountered: