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.

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.

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

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!

How 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.

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.

Which 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.

Want to share this article?

Plan your Software Development Career Now!

Leave a comment

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

Our Popular Software Engineering Courses

Get Free Consultation

Leave a comment

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

Get Free career counselling from upGrad experts!
Book a session with an industry professional today!
No Thanks
Let's do it
Get Free career counselling from upGrad experts!
Book a Session with an industry professional today!
Let's do it
No Thanks