Homebreadcumb forward arrow iconBlogbreadcumb forward arrow iconSoftware Developmentbreadcumb forward arrow iconAndroid tutorial for beginners

Android tutorial for beginners

Last updated:
5th Oct, 2022
Read Time
7 Mins
share image icon
In this article
Chevron in toc
View All
Android tutorial for beginners

The Android mobile operating system (OS) is one of the most popular and extensively used smartphone OS globally. While the OS was initially created for mobiles and digital cameras by California-based company Android Inc., the company’s acquisition by Google in 2005 led to the release of Android as a mobile OS two years later.

Today, Android holds a 69.74% share of mobile OS worldwide, with a global user base of 2 billion. Android is user-friendly, provides ample room for customisation and has robust community support, making it a leading player in the mobile OS industry.

This Android tutorial will walk you through the fundamentals of the Android OS and give an overview of how to build an Android project.

Check out our free courses related to software development.

Ads of upGrad blog

Explore Our Software Development Free Courses

Features of Android

We’ll begin this Android tutorial for beginners by listing the features of Android that make it a powerful mobile operating system.

  • Android is open-source and open to customisation as per requirements.
  • Android contains multiple APIs that support location-tracking features such as GPS.
  • The operating supports different types of connectivity like CDMA, GSM, Bluetooth, WiFi, etc., for data transfer and telephonic communication.
  • Android supports various image formats such as JPEG, GIF, PNG, MP3, BMP, etc. 
  • Android also supports messaging services and a wide range of media for recording/playing audio and video, including MKV, AVI, MPEG4, etc.
  • Android file manager simplifies all data storage-related activities.
  • Android’s integrated open-source WebKit layout-based web browser supports user interfaces like CSS3 and HTML5.
  • Android supports multimedia hardware control to allow recording or playback using a microphone and camera.
  • Android has support for 2D/3D graphics and virtual reality.
  • Android supports multi-tasking to let users run multiple applications simultaneously and seamlessly switch between them.

Top Programming Languages for Android Development

Kotlin is the official language for Android development, with over 60% of professional Android developers using it for writing Android apps. Before Kotlin, the official language for Android development was Java.

However, many other programming languages find use in Android development. Here’s the complete list:

  • Java
  • Kotlin
  • C#
  • C++
  • HTML, JavaScript, CSS
  • Python
  • Dart

Learn Software Development Courses online from the World’s top Universities. Earn Executive PG Programs, Advanced Certificate Programs or Masters Programs to fast-track your career.

Explore our Popular Software Engineering Courses

Android Versions So Far

Below, we have a list of the different Android versions released by Google since 2007.

VersionRelease Date Code Name
Android 1.0September 23, 2008Apple Pie
Android 1.1February 9, 2009Banana Bread
Android 1.5April 27, 2009Cupcake
Android 1.6September 15, 2009Donut
Android 2.0 – 2.1October 23, 2009Eclair
Android 2.2 – 2.2.3May 20, 2010Froyo
Android 2.3 – 2.3.4December 6, 2010Gingerbread
Android 3.0.x – 3.2.xFebruary 22, 2011Honeycomb
Android 4.0 – 4.0.4October 18, 2011Ice Cream Sandwich
Android 4.1 – 4.1.2July 9, 2012Jelly Bean
Android 4.4 – 4.4.4October 31, 2013Kitkat
Android 5.0 – 5.1November 4, 2014Lollipop 
Android 6.0 – 6.0.1October 2, 2015Marshmallow
Android 7.0 – 7.1August 22, 2016Nougat 
Android 8.0August 21, 2017Oreo
Android 9.0August 6, 2018Pie
Android 10.0September 3, 2019Android Q
Android 11.0September 8, 2020Android 11
Android 12.0October 4, 2021Android 12


Android Architecture

Next, in this Android development tutorial, we will give an overview of the Android architecture.

The Android architecture consists of different components. The Linux Kernel supports the main functionalities of the operating system, and the Dalvik Virtual Machine (DVM) is the platform for running Android applications.


Here’s a detailed description of each component of the Android architecture:


Applications is the top layer of the Android framework comprising the pre-installed applications such as home, contacts, gallery, camera, settings, and third-party apps downloaded from Playstore. The applications layer runs within the Android runtime using the application framework’s services and classes.

Application Framework

The application framework provides the classes for creating Android applications. It also manages the user interface and application resources and provides a generic abstraction for hardware access. The application framework includes various services such as location, telephony, view system, notification manager, etc., for application development.

Platform Libraries

Android platform libraries have a host of C/C++ core libraries and Java-based libraries such as Media, Surface Manager, SQLite, OpenGL, Webkit, etc., to support Android development. Each library has a specific function. For example, the Media Library is for recording and playing audio and video formats, SQLite is for database support, etc. 

Android Runtime

The Android runtime environment includes components like the Dalvik Virtual Machine (DVM) and core libraries. It forms the basis of the application framework and fuels the applications along with the core libraries. Like Java Virtual Machine (JVM), DVM is a register-based virtual machine designed and optimised to enable Android to run multiple instances efficiently. The core libraries help implement Android applications using Kotlin or Java programming languages.

Linux Kernel 

At the heart of the Android architecture is the Linux Kernel managing all the drivers such as camera drivers, display drivers, audio drivers, Bluetooth drivers, etc. The drivers are required during the runtime. The Linux Kernel provides an abstraction layer between the device hardware and the rest of the stack and has features like memory management, process management, resource access, etc.

In-Demand Software Development Skills

Create an Android Project With Android Studio

As part of this Android studio tutorial, we will now give an overview of how to create an Android project using Android Studio. Here are the steps:

  1. Install Android Studio.
  2. Click Create New Project in the Welcome to Android Studio window.


  1. Select Empty Activity in the Select a Project Template window and click Next. Select File > New > New Project if you already have a project opened.
  2. Complete the following steps in the Configure Your Project window:
  • In the Name field, enter “My first Android app.”
  • In the Package name field, enter “com.example.myfirstandroidapp.”
  • Change the Save location if you want to save the project in a different folder.
  • Select either Kotlin or Java from the Language drop-down menu.
  • In the Minimum SDK field, select the lowest version of Android you want your application to support.
  • Check the Use legacy libraries box if your app requires legacy library support.
  • Click Finish.

The Android Studio main window will appear after some processing time.

  1. Next, review the important files.
  • Select View > Tool Windows > Project and select Android view from the drop-down list at the top of the window. You will see the files listed below:

app > java > com.example.myfirstapp > MainActivity The system launches an instance of the Activity and loads its layout when you build and run the app.

app > manifests > AndroidManifest.xml – The manifest file defines each of the app’s components and its characteristics.

app > res > layout > activity_main.xml The XML file determines the activity’s user interface layout and contains a TextView element with a text, say, “Hello World!”

Gradle Scripts > build.gradle The project and app module each have their build.gradle file, used for controlling how the Gradle plugin builds the app. 

  1. Once you create the app, the next step is to run your Android app on an emulator or a real device.

Read our Popular Articles related to Software Development

Kickstart Your Career as a Software Developer With upGrad

Ads of upGrad blog

upGrad’s Executive PG Programme in Software Development in association with IIIT Bangalore is a 13-month online programme specifically designed for working professionals.

Programme Highlights:

  • Executive PGP Certificate from IIIT Bangalore
  • Specialisation in full-stack development
  • Data Science and ML certification, Cloud AWS certification and Microsoft Azure Certification upon completion of additional modules.
  • 400+ hours of content
  • 45+ live sessions
  • 7+ case studies, and projects
  • 10 programming languages and tools
  • Comprehensive learning support and career assistance
  • Practical learning and networking

Apply now for a rewarding career in software development!


Pavan Vadapalli

Blog Author
Director of Engineering @ upGrad. Motivated to leverage technology to solve problems. Seasoned leader for startups and fast moving orgs. Working on solving problems of scale and long term technology strategy.

Frequently Asked Questions (FAQs)

1How long does it take to learn Android for beginners?

If you are a beginner, learning the core Java skills you need for Android development will ideally take about 3-4 months and around 1-1.5 years to master. So, a beginner will need more or less a year or two to have a good understanding and work with Android projects.

2 Can we learn Android without knowing Java?

Core Java concepts are indispensable to getting started with the Android development. Before you dive into Android app development, you must understand the fundamentals of object-oriented programming to break software into smaller modules and write reusable code.

3Which is the best language to develop Android apps?

Java is the most used language for Android app development, while Kotlin is the official one. Java is also the most supported language by Google, with many apps in the Play Store written in Java.

Explore Free Courses

Suggested Blogs

What is Composition in Java With Examples
Java is a versatile language that supports object-oriented programming and code reusability with building relationships between two classes. There are
Read More

by Arjun Mathur

19 Feb 2024

Software Engineer / Developer Salary in India in 2024 [For Freshers & Experienced]
Summary: In this article, you will learn about Software Engineer Salary in India based on Location, Skills, Experience, country and more. Today softw
Read More

by Rohan Vats

Top 40 Most Common CSS Interview Questions and Answers [For Freshers & Experienced]
Every industry has started the use of websites and applications to catch up with the pace of the rapidly transforming world. CSS is one of the most cr
Read More

by Rohan Vats

19 Feb 2024

Top 10 Highest Paying Programming Languages In India [2024]
Programmers and Developers are among the highest-paid professionals in the world. They earn six-figure annual salary packages in countries like the US
Read More

by Rohan Vats

19 Feb 2024

Top 12 Highest Paying Online Software Courses in India [2024]
The demand for innovative software products and solutions is at an all-time high, and rest assured, it will only peak higher in the coming years. One
Read More

by Rohan Vats

19 Feb 2024

23 Exciting Software Development Project Ideas & Topics for Beginners [updated 2024]
Summary: In this article, you will learn the 23 Exciting Software Development Project Ideas & Topics for 2023. Take a glimpse below. Android tas
Read More

by Rohan Vats

19 Feb 2024

Must Read 50 OOPs Interview Questions & Answers For Freshers & Experienced [2024]
Attending a programming interview and wondering what are all the OOP interview questions and discussions you will go through? Before attending an inte
Read More

by Rohan Vats

18 Feb 2024

25 Exciting Best Django Project Ideas & Topics For Beginners [2023]
What is a Django Project? Django projects with source code are a collection of configurations and files that help with the development of website app
Read More

by Kechit Goyal

18 Feb 2024

44 Must Know Agile Methodology Interview Questions & Answers: Ultimate Guide 2024
Attending an agile interview and wondering what are all the questions and discussions you will go through? Before attending an agile testing interview
Read More

by Arjun Mathur

18 Feb 2024

Schedule 1:1 free counsellingTalk to Career Expert
footer sticky close icon