Hello Everyone!
In this
article we are discussing about the android architecture. It is essential for
all the android application developers to understand the android architecture
to get a clearer idea about the structure on which the application is made.
From the exam point of view, the android architecture stack question has been asked
several times (sometimes along with the Dalvik Virtual Machine).
Android operating system is a
stack of software components which is roughly divided into five sections and
four layers.
The five sections of android architecture
are-
- Linux kernel
- Libraries
- Android Runtime
- Application Framework
- Applications
This is a layered architecture with
each section having a different functionality.
A) Linux Kernel -
It is the bottom most layer of the architecture. This is the kernel on which android is based. This layer provides a level of abstraction between the hardware devices. It also contains all the low-level device for the various hardware components like camera, keypad, etc.
B) Libraries-
Libraries contain defined code for all the main features of android OS. The set of libraries provide open-source web browser engine WebKit which can be used for web browsing, library for SQLite database which is useful to store and access data for applications. Other libraries are for playing audio, video and for internal security. Some of them are android.text (for text manipulation on display), android.widget ( to use predefined UI components), and android.view (for intents).
C) Android Runtime-
The android runtime provides
Dalvik Virtual machine which is used to convert the android code. DVM is
similar to Java Virtual machine but enables android application to run its own
process with its own instance of DVM. Dalvik is specifically designed for Android
and optimized for battery- powered mobile devices which has limited memory and
CPU resources.
The android runtime also provides a set of core libraries which allows the developers to write the application using Java programming language.
D) Application framework-
This Layer provides high level services in the form of Java classes. The developers can make use of these services in the applications. The services included are Activity Manager, Context providers, resource manager, notification manager, etc.
E) Application-
This is the top most layer in the
android architecture. In this layer, all the applications that are preinstalled
or required for an application to run are present. Example- Phone, Contacts,
Browser, Radio, Camera, Calculator, Settings, etc.
The applications which are
installed later from application store are also present in this layer.
Example- WhatsApp, Instagram, Truecaller,
Zomato, etc.
Comments
Post a Comment