This story is for those who still don’t know much about the Navigation Component. Here we will run through the main elements of the library and see how it all looks.

You are now in the first part of a large story about the Navigation Component in a multi-module project. If you are already familiar with the basics, then I recommend going further to the parts:

TL;DR.:

To organize navigation in the app using…


In this story, you will get to know what Safe Args is, how it simplifies work with NavComp and what is the result of its work including that under the hood.

You are now in the second part of a large story about the Navigation Component in a multi-module project. If you are hearing about Navigation Component for the first time, I recommend that you first read what Navigation Component is. If you are already familiar with the basics, then you can move on to the most interesting stories:


In this story, you will get to know how to organize graphs of each separate module / feature / user story, centralize them, build direct navigation between them, and use it with a Safe Args plugin.

You are now in the third story of my experience with the Navigation Component in a multi-module project. If you do not understand a single word above, then you better to get about:

Well, if you are already familiar with this library, then there is a nice bonus for you…


You are now in the fourth part of a large story about the Navigation Component in a multi-module project. If you already know:

Then welcome to the final story about my experience with this beautiful library about a solution for iOS-like multistack navigation. Otherwise, read the three stories above first.

In addition to the Navigation Component library, Google has released several interface features called Navigation UI, which will help you connect navigation to bottomBar, Menu, and…


Jetpack Navigation Component is a relatively new tool for building navigation inside an Android application. Google released this library in March 2019 to show a new approach for implementing navigation, different from libraries like Cicerone, Conductor, etc. or custom / self-written methods.

Advantages of the Navigation Component:

  • The product is from Google, which means you can count on long-term support and refinement.
  • It is easy to learn and use.
  • Safe Args plugin which makes working with the library even easier.
  • An embedded in Android Studio editor with visual navigation representation.
  • All the main navigation elements are specified in xml which…

Вы сейчас в четвертой части большого материала про Navigation Component в многомодульном проекте. Если вы уже знаете:

То добро пожаловать в заключительную часть истории о моем опыте с этой прекрасной библиотекой — про решение для iOS-like multistack-навигации.

Если не знаете, то ̶в̶ы̶й̶д̶и̶т̶е̶ ̶и̶ ̶з̶а̶й̶д̶и̶т̶е̶ ̶н̶о̶р̶м̶а̶л̶ь̶н̶о̶ прочитайте сначала три статьи выше.

В дополнение к библиотеке Navigation Component Google выпустили несколько интерфейсных дополнений под названием NavigationUI, которые помогут вам подключить навигацию к BottomBar, Menu и прочим стандартным компонентам. Но…


Jetpack Navigation Component — относительно новый инструмент построения навигации внутри Android-приложения. Google выпустил эту библиотеку в марте 2019 года, чтобы показать новый подход в реализации навигации, отличный от самописных способов, Cicerone, Conductor и пр.

Почему Navigation Component:

  • Продукт от Google, значит, можно рассчитывать на долгую поддержку и доработку.
  • Простой в освоении и использовании.
  • Плагин Safe Args, который делает работу с библиотекой еще проще.
  • Редактор, вшитый в Android Studio и имеющий визуальное представление.
  • Все основные элементы навигации указываются в xml — это позволяет разделить навигацию и остальной код друг от друга.

Но есть и нюансы. Как только дело доходит до навигации…


В этой статье вы узнаете, как можно организовать графы отдельных модулей / фич / user story, централизовать их, построить прямую навигацию между ними и присыпать сверху Safe Args плагином.

Вы сейчас в третьей части большого материала про Navigation Component в многомодульном проекте. Если не поняли ни единого слова выше, то призываю сначала ознакомиться с тем:

Ну а если вы уже знакомы с этой библиотекой, то для вас есть приятный бонус в следующей статье — подход к организации multi backstack-навигации.

Сначала посмотрим, как выглядит разбиение проекта…


В этой статье вы узнаете, кто такой этот Safe Args, как он упрощает жизнь и что является продуктом его работы, в том числе и за кулисами.

Вы сейчас во второй части большого материала про Navigation Component в многомодульном проекте. Если вы впервые слышите про Navigation Component, то рекомендую сначала почитать, что вообще такое Navigation Component. Если уже знакомы с азами, то можно переходить к самому интересному:

Safe Args — это плагин, идущий отдельно от Navigation Component, но созданный специально для того, чтобы с библиотекой работалось легче. С…


Эта история для тех, кто до сих пор не в курсе про Navigation Component. Тут мы пробежимся по основным элементам библиотеки и посмотрим, как это все выглядит.

Вы сейчас в первой части большого материала про Navigation Component в многомодульном проекте. Если вы уже знакомы с азами, то рекомендую идти дальше к частям:

TL;DR.:

Чтобы организовать навигацию в приложении с помощью Navigation Component, надо:

  1. Создать граф;
  2. Добавить в него экраны;
  3. Добавить переходы между ними;
  4. Добавить вложенные графы, если…

Anton Uryvskii

Android Developer

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store