![]() Let’s take an example from our app and have this navigation flow: navigation back - This is probably the greatest topic at all. All this is either impossible or extremely verbose and complex to set up.ĭeeplink support and navigation up vs. We want to freely pass more complex types (Parcelable/Serializable), non-primitive types like lists of ints, or even nullable primitive types. Safe argument passing - This is the main reason why we are not satisfied with the “raw” Jetpack Navigation Compose library, which we are currently using. ![]() There are also requirements that are supported in every navigation library, so let me rather enumerate key areas that are implemented differently or not implemented at all. Yet every solution lacks something for our apps usage. There are plenty of possible solutions - extensions to Jetpack Navigation Compose (Compose Destinations) or completely new navigation stacks with a custom implementation of the whole concept of navigation (Voyager, Compose Navigation Reimagined, Appyx). Navigation for Compose uses a simple URL pattern - arguments have to be converted to a string as a query parameter/path segment. Most importantly, there are no SafeArgs - a type-safe compile time solution for passing arguments between destinations. ![]() But the actual “enhancement” is a bit limited and different from the View-based navigation. Jetpack Navigation Compose is the Jetpack Navigation library enhanced for usage in Compose. ![]()
0 Comments
Leave a Reply. |