Navigation Overview
The Android navigation user flow is built around what are called destinations within your app. There are primary destinations that are available at the top level of your app and, subsequently, are always displayed in the main app navigation and secondary destinations. A guiding principle of each of the three navigation patterns is to contextually provide information about the main section of the app the user is in at any point in time.
This can take the form of a label in the top app bar of the destination the user is in, optionally displaying an arrow hint that the user is not at the top level, and/or providing highlighted text and icons in the UI that indicate the section the user is in. Navigation in your app should be fluid and natural, intuitively guiding the user while also providing some context of where they are at any given point in time. Each of the three navigation patterns you are about to explore accomplishes this goal in varying ways. Some of these...