

Install Android Studio and learn the basics of Kotlin to get started. If you were to start learning Android development today, Kotlin should be your language of choice. Pick a Languageįor the languages, you can develop Android apps either by using Kotlin or Java.Īlthough, you can use both Kotlin and Java to develop native Android apps, Google announced in 2019 to make Kotlin the preferred way of developing Android applications.

Here is the full version of the roadmap in a single image and after that we have the broken down version with the resources and links to learn more about each of the boxes.īelow is the broken down version of the roadmap with links and resources to learn more about each of the items listed in the complete roadmap above. This roadmap is focused on native Android app development, but if you are interested in learning any hybrid framework, my personal preference is React-Native and I would recommend you check out the Frontend Developer Roadmap. Answering the question of hybrid vs native is out of the scope of this roadmap. Flutter uses Dart, whereas React Native and Native Script rely on JavaScript. There are multiple ways to develop applications for Android you can go down the path of hybrid application development where Flutter, React-Native, or NativeScript are the most common contenders. Having said that, we would love to hear your opinions and incorporate them in the roadmap if suitable. Before we start, please note that the roadmap is opinionated, and you might have different opinions than those of the author. The intent of this guide is to give you an idea about the Android development landscape and to help guide your learning if you are confused.
