Android
. Android is a software bunch comprising not
only operating system but also middleware and key applications. Android is a powerful Operating
System supporting a large number of applications in Smart Phones. These applications make life more
comfortable and advanced for the users.:
Android
- Architecture
Linux kernel
This provides a level of abstraction between
the device hardware and it contains all the essential hardware drivers like
camera, keypad, display etc. Also, the kernel handles all the things that Linux
is really good at such as networking and a vast array of device drivers, which
take the pain out of interfacing to peripheral hardware.
Libraries
Top of Linux kernel there is a
set of libraries including open-source Web browser engine WebKit, well known
library libc, SQLite database which is a useful repository for storage and
sharing of application data, libraries to play and record audio and video, SSL
libraries responsible for Internet security etc.
Android Libraries
This category encompasses those
Java-based libraries that are specific to Android development. Examples of
libraries in this category include the application framework libraries in
addition to those that facilitate user interface building, graphics drawing and
database access. A summary of some key core Android libraries available to the
Android developer is as follows −
·
android.app − Provides access to the application model
and is the cornerstone of all Android applications.
·
android.content − Facilitates content access, publishing and
messaging between applications and application components.
·
android.database − Used to access data published by content
providers and includes SQLite database management classes.
·
android.opengl − A Java interface to the OpenGL ES 3D
graphics rendering API.
·
android.os − Provides applications with access to
standard operating system services including messages, system services and
inter-process communication.
·
android.text − Used to render and manipulate text on a
device display.
·
android.view − The fundamental building blocks of
application user interfaces.
·
android.widget − A rich collection of pre-built user
interface components such as buttons, labels, list views, layout managers,
radio buttons etc.
·
android.webkit − A set of classes intended to allow
web-browsing capabilities to be built into applications.
Android Runtime
This section provides a key
component called Dalvik Virtual Machine which is a kind of Java Virtual Machine
specially designed and optimized for Android.
The Dalvik VM makes use of Linux
core features like memory management and multi-threading, which is intrinsic in
the Java language. The Dalvik VM enables every Android application to run in
its own process, with its own instance of the Dalvik virtual machine.
The Android runtime also provides
a set of core libraries which enable Android application developers to write
Android applications using standard Java programming language.
Application Framework
The Application Framework layer
provides many higher-level services to applications in the form of Java
classes. Application developers are allowed to make use of these services in
their applications.
The Android framework includes
the following key services −
·
Activity
Manager −
Controls all aspects of the application lifecycle and activity stack.
·
Content
Providers − Allows
applications to publish and share data with other applications.
·
Resource
Manager −
Provides access to non-code embedded resources such as strings, color settings
and user interface layouts.
·
Notifications
Manager − Allows
applications to display alerts and notifications to the user.
·
View
System − An
extensible set of views used to create application user interfaces.
Application Components
Application
components are the essential building blocks of an Android application. These
components are loosely coupled by the application manifest file AndroidManifest.xml that describes each component of the
application and how they interact.
Activities
An activity represents a single
screen with a user interface,in-short Activity performs actions on the screen.
For example, an email application might have one activity that shows a list of
new emails, another activity to compose an email, and another activity for
reading emails. If an application has more than one activity, then one of them
should be marked as the activity that is presented when the application is
launched.
Services
A service is a component that
runs in the background to perform long-running operations. For example, a
service might play music in the background while the user is in a different
application, or it might fetch data over the network without blocking user interaction
with an activity.
Broadcast Receivers
Broadcast Receivers simply
respond to broadcast messages from other applications or from the system. For
example, applications can also initiate broadcasts to let other applications
know that some data has been downloaded to the device and is available for them
to use, so this is broadcast receiver who will intercept this communication and
will initiate appropriate action.
A broadcast receiver is
implemented as a subclass of BroadcastReceiver class and each message is broadcaster
as an Intent object.
Content Providers
A content provider component
supplies data from one application to others on request. Such requests are
handled by the methods of the ContentResolver class. The data may be stored in the
file system, the database or somewhere else entirely.
A content provider is implemented
as a subclass of ContentProvider class and must implement a standard
set of APIs that enable other applications to perform transactions.
In future, for sure, Android will be the top technology in the IT market. Thanks for your blog on Android.
ReplyDeleteRegards:
Android Course in Chennai
Android Training Chennai
I am very happy to be able to find your website, and can comment on your website. thanks. Please visit my website
ReplyDeleteERP for Automotive
Congratulation for the great post. Those who come to read your Information will find lots of helpful and informative tips. JEE Main 2019
ReplyDelete