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
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:
- Install Android Studio.
- Click Create New Project in the Welcome to Android Studio window.
- 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.
- 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 android.support libraries box if your app requires legacy library support.
- Click Finish.
The Android Studio main window will appear after some processing time.
- 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.
- 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.
