Introduction To Android Operating System
Android is the mobile operating system software, developed by Google, mainly used in smartphones and tablets. It is open-source software also known as Android Open Source Project which is based on the Linux kernel platform. It was September 2008 when it was launched commercially.
Structure Of An Android Operating System
Before proceeding, we need to be familiar with some terms such as API, APK, Module, Android library, AAR, and Custom ROM.
- API: API is an Application Programming Interface, software that works as an intermediate. With which two applications can talk to each other. For example, whenever you are using an app such as Whatsapp or Facebook you are using API.
- APK: For a developer, to easily write and deploy applications for Android smartphones, it is required to use an android framework that consists of a group of API. For the Android operating system, there are some specific file format packages used, mainly for installation and distribution of mobile apps, those are called APK or Android application package.
- Module: While developing an application in android, we need a specific container that can contain some vital information, such as Manifest file for android, Settings for app-level, Build a file of module-level, Resource files, Source code of the application. Android app modules act as a container to do this job.
- Android Library: If we observe the structure, then it is almost the same as the Android app module, but it does not compile code into an android application package, but with an android archive.
- AAR: For distributing packages, mainly libraries, Android Archive is a much better option to do this work. With Android Studio & Gradle it’s easy to create some metadata files, and the update built files in the app’s Gradle.
- Custom ROM: It is a firmware that is rooted in the source code of android. The main function of this is, to offer the ability to do customizations on the tablet or smartphone. Like replacing manufacturer skin, eliminating bloatware, configuring permissions in applications, and so on.
Android Framework
To write and develop applications easily and efficiently, we need an android framework, which consists of several APIs. It incorporates many tools like image panes, text fields, buttons, media players, tools to design UI, phone controls, intents in system tools, etc.
There are multiple steps involved while developing apps in the android framework.
- Building From Source Code: Unlike the pre-built version, it’s better to build apps from source code. One can easily download the source bundle and start working on it.
- Source Code Overview: When a developer writes a programming code that is only readable by people but the system cannot understand that language. When a compiler or an assembler translates that code into a source code that is only readable and executable by the system.
- Adding Platform Libraries: To access device components (physical), like touch input and sensors, we need platform libraries. There are some set of tools available in the Native Development Kit, by which a developer can use C or C code with android.
- Changing Startup Process: When you boot your android device, if you don’t want an application to auto-start or if you wish to make it freeze, then you can control that from the startup manager.
- Changing Permissions: When using the method called ContextCompat.checkSelfPermission(), it would return either permission granted or permission denied. As per the requirement, it can be set.
- Modifying Frameworks: By adding new classes and modifying existing classes developer can modify the framework.
- Linux Kernel: Android uses the UNIX system kernel beneath the hood. Linux system is an ASCII text file; programmers may modify the UNIX system kernel to suit their wants. Linux system provides the programmer a pre-built, already maintained package kernel to start with so that they do not have to write down their kernel.
Application programmers may interconnect mainly with two groups of services. One is the system and another is the media.
- System Services: Notification manager and windows manager are system services. For example, in an application, the notification manager sets down information in the title bar. A user can expand the bar and set off another activity. In a graphical user interface, if a developer wants to control the placement of windows or appearance then we need a windows manager.
- Media Services: In an android framework, it is mainly involved in recording and playing media. It layout application interfaces.
Benefits Of Android Operating System
- There are many advantages while working with the Android framework. It is easy to integrate, royalty-free, customizable, open-source advantages, easy access in the android application market, cost-effective and booming job opportunities.
- But at the same time, it is very important to learn java, because it is the standard way to develop the program in Android. An android device runs on Linux, and java protects the native code from any type of memory leaks.
- Java is not mandatory but the simplest option for developers while an android application can be developed using other programming languages such as HTML, Python, C, or C.
Recommended Articles
This is a guide to Android Operating System. Here we discuss the introduction to android operating system, framework, various benefits and its structure. You can also go through our other suggested articles to learn more –
Are you preparing for the entrance exam ?
Join our Mobile Development test series to get more practice in your preparation
View More