How to learn Android app development


Let’s talk about a technology that has set the world ablaze. What is always present not just in our pockets and our living rooms but also on our minds? A smartphone, right? From the moment we wake up to the moment we go to sleep, the one thing that doesn’t part from us is our smartphone. While our smartphones make life easy for us, the apps on them make it easier. More than 80% of the smartphone market share is of Android, and with the exponential increase in the number of Android users, the need for Android developers has increased many folds.

So how can a college student learn Android app development when she has no prior experience in Android programming? Learning a new operating system altogether seems scary but Android is not a difficult technology to learn anymore. Or is it? Let’s find out.

The very first step in learning Android development is to learn the Android programming language(s) required to create an app.
1. Java – Java, the conventional queen of Android programming, is the most widely used programming language for Android app development. Android relies largely on Java with even Android SDK written in Java. You can easily learn Java through internet tutorials on the Notepad on your computer. Java also makes it easier for you to grasp other programming languages and explore careers in technologies other than Android. To learn core Java in and out, you can check out Internshala’s Core Java training.
2. Kotlin – Google made the big announcement in its I/O conference 2017 and introduced Kotlin as the official language for Android programming. Kotlin is an open source language that runs on a Java Virtual Machine. With features like operator overloading, lambda expressions, and higher-order functions, Kotlin has a concise syntax and requires less coding. If you have no prior experience in Android development, then Kotlin will make your life a little easier!
3. XML – Extensible Markup Language or XML is largely used in Android to design UI layouts and the screen elements they contain. This means that XML defines the look and feel of an Android app. Apart from this, it also allows parsing of data in an app.

Before you set out to create an Android app, you’ll need to be familiar with some key concepts of Android development.
1. Activity – An activity represents a screen in an Android app with which users can interact. An app with multiple screens has multiple activities since it doesn’t begin in the same way for every user. For example, if you receive an email and open it from your notification bar, the email will show, but if you open it from the Gmail app, you’ll see a list of emails. Activities are designed to facilitate such paradigms. To know more about how activities function in Android, you can visit Android Developers.

2. Fragments – A fragment is like a ‘sub activity’. It is a modular section of an activity which has its own lifecycle, receives its own input events, and has its own layout.

3. Content Providers – A content provider manages access to a central repository of data, which means that it lets you centralize content in one place. It is used to share data between applications.

4. Context – Let’s just say a context is the personal assistant of an Android application. It is the context of the current state of the application/object. It helps the newly created objects understand the on-going events in an Android application. Context in Android is an extremely important concept. To understand it better, you can read this Mindorks article on context.

5. Broadcast Receivers – On an Android device, various events like low battery, incoming call, incoming text, wifi connection, etc. could occur. To listen to these events and have your system act accordingly, you need a mechanism. This mechanism is called a broadcast receiver and these events are known as intents. To know how these receivers work, you can visit here.

6. Back Stack – A collection of activities to perform a certain job is called a task. These activities are arranged in a certain order in which the activities are opened – this order is called back stack. To know more about the back stack, click here.

7. RecyclerView – Consider you have a thousand contacts on your smartphone. For a simple list view, your Android system would create a thousand objects to store these contacts. However, with RecyclerView, the application creates a limited number of objects and as you scroll down, the contacts at the top go out of the screen and are put back down with new data in them. For more RecyclerView ins and outs, go through this Google I/O 2016 talk.

8. Android Support Library – This is a set of code libraries that provide Android framework APIs and features. These support libraries are backward-compatible to a specific Android API level. The support libraries offer a wide range of classes for building apps. You can read more about Android Support Library here.

9. Android Views & Layouts – A view is responsible for drawing and event handling in Android. The view class comprises all GUI components in Android and the view objects are called widgets. View has a special classification called a ViewGroup which contains other views. It is the base class for layouts. Layouts define the structure for a user interface in your app. To know more about Android views & layouts, you can go through this comprehensive guide on layouts.

Where to learn and how?
1. Video TutorialsFragmented, an Android podcast by Kaushik Gopal and Donn Felker, talks about patterns and practices that help Android developers go from good to amazing. You can also subscribe to channels like The New Boston and Slide Nerd that offer Android tutorials to beginners.
2. Recommended books – Before trying your hand in Android app development, you need to be well versed with either Java or Kotlin. Books like Thinking in Java and Head First Java will come in handy when you’re preparing to think like a Java programmer. For Kotlin, you can go through Programming Kotlin and Kotlin for Android developers. After you have learnt Android programming languages, it’s time to learn Android app development. Head First Android Development and The Big Nerd Ranch Guide will explain the key concepts of Android for beginners in an interesting way.
3. Internshala Android training – Usually the information on the internet is quite cluttered and doesn’t have a proper flow. Thus, beginners find it overwhelming to learn Android app development. An online training on Android app development has all the requisites for you to develop your own app in an organised manner and is a perfect Android tutorial for beginners to learn Android.

I’ve read the books, watched the tutorials, familiarised myself with all the basic terms, and underwent an online training. Am I an Android app developer now?
Well, let’s say you’re almost there. Learning to code and employing your programming skills in a real-time environment are two different things. To become a professional Android developer, i.e. take up a job or an internship in Android development, you’d need some hands-on experience of making an app.

Here’s how you can get hands-on experience of app development –
1. Imitate – There are millions of apps on Google Play Store. Pick an app of your choice and start designing and developing the app. You can also choose to design certain bits and part of an existing app – this will give you a closer insight into creating an app.
2. Modify – You use a lot of apps on a daily basis and sometimes crib about their certain attributes, hoping they’ll change their UI. Don’t hope, make the change yourself. You can pick an app, copy its code in your Android Studio (in case you don’t want to write the code for the app), and add/remove the features that you want in the app.
Secret tip: Many big shot companies love it when your portfolio includes some UI changes in their app.
3. Make – If you have an idea for an Android app – amazing! Go ahead and make an app. But if you don’t have an idea for your own app, ask for help from Google. There would be a lot of websites that do not have an Android application, pick a website and design an Android app for it. Do you have a relative who has an online fashion store? Develop an Android app for him! Is there a restaurant nearby? Make an app for them!
4. Do an internship – An internship in Android app development will give you a real-time experience of working on a real project. You’ll learn from seasoned mentors and gain knowledge about the practical aspects of app development along with learning about the problems an Android developer faces and how to cope with them. While applying to an internship in Android app development, an Android certification and a portfolio that you can develop by making dummy apps will come in handy.

So, all set to learn Android app development? Before you roll up your sleeves and begin your quest to learn how to develop an app, check out Internshala’s Android training and get an additional discount of 10% on using the coupon code BLOG10.

30 thoughts on “How to learn Android app development

  • August 1, 2018 at 8:15 AM

    Thank you for pointing out that you can learn by watching training videos. Making sure you know how to make apps seems important. Hopefully, businesses look into getting the best training possible.

  • August 21, 2018 at 2:12 PM


    Thanks for sharing comprehensive post, your post having informative & valuable content, it will be helpful, appreciated your efforts.

  • August 24, 2018 at 10:51 PM

    With the help of ms outlook support you can easily learn all the tutorial oriented to the application development, And for that, you can easily go with the proper tutorials with the live examples, Step by step, And it is really very helpful for the beginners to go with it.

  • September 12, 2018 at 2:33 PM

    10Daneces Training Division is a professional training Company offering IT enabled services & industrial trainings for B.E., B-Tech, MCA, BCA, MSc and MBA fresher’s and experienced Developers/programmers in various platforms. Summer Training /industrial training will be provided for the students of BCA, B-TECH, M.TECH, MBA and MCA only. Deserving candidates may be awarded stipends, scholarships and other benefits, depending on their performance and recommendations of the mentors. Founded in 2009, 10Daneces is the largest privately held provider of IT training, enterprise learning services, software and Web Development solutions for information technology (IT) and management professionals. 10Daneces provides end-to-end learning services and solutions that create a quantifiable path to improved performance and increased knowledge for enterprise customers around India.

    10Daneces is the leading learning solutions and professional services provider in India. 10Daneces is focused on meeting the growing need for Information and Communication Technology (ICT) expertise in both global and local markets. Providing its clients with IT Training, Corporate Training, Software development, Web Development and Consultancy Services. 10Daneces enables its clients to accelerate their business growth through more effective use of ICT in their respective industry.

  • October 17, 2018 at 5:30 PM

    Hello there and thanks for your information, I have certainly picked up allot new info from right your post. You are also provided information about best tips for app development course,Which is very helpful to me and other people also.

  • January 14, 2019 at 3:03 PM

    Best Python Programming Course in Kolkata, Indian Cyber Security Solutions.

    Python programming course is the most demanded programming language in the industry. With around 30% jobs in the field of information technology demand good knowledge in Python programming. At Indian Cyber Security Solutions, we provide the Certified Python Programming course which is designed in such a way that it covers all topics from the basic to the advance level.

    Please visit:

  • March 2, 2019 at 11:05 AM

    Kindly tell me which site is perfect for learning in python.

    • March 5, 2019 at 4:37 PM

      Hi Tayyaba,

      Internshala offers online Python training programs which help you learn a new skill from the comfort of your room. The content of the training course is a combination of text, demonstrative videos and presentations. All the video lectures have been pre-recorded by our training experts.

      For more details, please visit You can use the coupon code BLOG10 for an additional discount of 10%.

      Please write to us at in case you have any other queries.

      Thanks~ Ankit

  • March 7, 2019 at 11:13 AM

    Kindly tell me which platform is perfect for learning in python.

  • March 9, 2019 at 2:32 PM

    Very informative blog…. I will keep in mind all the things.

  • April 18, 2019 at 10:40 AM

    Hi, thanks for sharing such detailed information with us all. This is really great to read about the android details and are really going to help me a lot. Thanks once again for sharing. We also provide Android Training in Mohali so if you want to know more about the training you can also check Excellence Technology website.

  • December 6, 2019 at 12:33 PM

    Hi… These blogs offer a lot of information about android app development.Your blog is incredible. I am delighted with it. Thank you for sharing this wonderful post.

  • December 20, 2019 at 10:00 AM

    good explanation about android app development our also coaching in surat we provide training also

  • December 20, 2019 at 10:23 AM

    if you want to learn Android application development then you have to learn some computer programing languages, like Java, Kotlin, and XML. and you have to know all things and function deeply in those languages.

  • December 24, 2019 at 12:06 PM

    Before building an App you should learn the basic language of Java or C++ to understand the code. Then you can learn the Android Studio by visiting reputed channels or pages on Facebook. And you also need to understand the basic rules of developing an App and proper planning like speed, user-friendly, interface, etc.

  • January 18, 2020 at 2:40 PM

    Really informative post.Thanks Again. Great.

  • April 3, 2020 at 2:54 PM

    These are some great tips! thanks for sharing

  • June 23, 2022 at 2:38 PM

    Thanks for sharing this worth-reading article. Interesting to know more about the android app development.

  • July 6, 2022 at 3:02 PM

    Hi! Very nice article! I would like to add that the situation on the android developer market is getting more and more complicated because the competition for junior specialist positions is too big, but it is very hard to find good senior experts. Thus, the frequent statement that the developer market is oversaturated is only partially true.


Leave a Reply

Your email address will not be published. Required fields are marked *