8/17/2019 sem rep on epap
1/24
A
Seminar Report
on
Android
in
partial fulfillment
of
Bachelor of Technology
in
Computer Science and Engineering
Signature of Guide Signature of H.O.D
Department of Computer Science and Engineering
Vidya College of Engineering
eerut
Se!!ion "#$%&"#$'
8/17/2019 sem rep on epap
2/24
Declaration
I hereby declare that the Seminar Report “ Android ” is our
own work and effort and that it has not been submitted
anywhere for any award. The text embodied in this report has
not been submitted to any other university or Institute for the
award of any degree or diploma.
ate! "kansh #ain
4
8/17/2019 sem rep on epap
3/24
$roud $ast $romising %uture
Vidya College of Engineering, Meerut
CERT()(CATE
This is to certify that the seminar report on “&ndroid” is a bonafide
record of work done by 'ikhil (umar )*+,,-* + /0 under our
guidance in partial fulfillment of Bachelor of Technology in
Computer Science and Engineering . 1is performance was
found satisfactory and we wish him all the best for his bright future.
The text embodied in this report has not been submitted to
any other university or Institute for the award of any degree.
*unit ittal Dr. Ra+endra ,umar
A!!i!tant *rofe!!or HOD
CSE CSE
5
8/17/2019 sem rep on epap
4/24
ABSTRACT Android is a software stack for mobile devices
that includes an operating system, middleware and key applications. It
can be considered as a software platform as well as an operating
system for mobile devices based on the Linux operating system and
developed by Google and the Open andset Alliance. It allows
developers to write managed code in a !ava"like language that utili#es
Google"developed !ava libraries.
$he android architecture consists of key applications, application
framework, core libraries, android runtime and a Linux kernel. $he main
features of android applications are which have an integrated browser,
%&Lite for data storage, support for common audio, video formats and it
has G%', ()G(, *G and +i" i connectivity etc
An android application consists of four important parts. $hey are Activity,
Intent receiver, services and content provider. $here are some
application development tools like (clipse for the android phones.
Google also develop emulator of android phone. +hich help the
application developers to run the application without an android phone.
'any versions of android operating system are available like
Gingerbread, oneycomb, royo etc. the latest one is -Ice ream%andwich/ ie, Android0.1 . $he development of android made a boom in
the mobile technology field.
6
8/17/2019 sem rep on epap
5/24
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&CO-TE-T &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
2. (-TROD CT(O- TO A-DRO(D
$.$ Open HA-DSET A//(A-CE
3. )EAT RES
".$ Dal0i1 0irtual machine
"." (ntegrated Bro2!er
".3 S4/(T
".5 CO--ECT(V(T6
".% ESSAGES
".' ED(A S **ORT
".7 ADD(T(O-A/ HARD8ARE S **ORT
".9 A-DRO(D AR,ET
".7 /T(TAS,(-G
*. A-DRO(D ARCH(TECT RE
3.$ ,E6 A**/(ACAT(O-S
3." A**/(CAT(O- )RA E8OR,
*.3.2 A $I4I$5 'A6AG(7
*.3.3 O6$(6$ 87O4I)(7
*.3.*. 7(%O97 ( 'A6AG(7
*.3.0 LO A$IO6 'A6AG(7
*.3.: 6O$I I A$IO6 'A6AG(7
*.3.; 4I(+ %5%$('
*.3.< $(L(8 O65 'A6AG(7
*.3.= +I6)O+ 'A6AG(7
3.3 /(BRAR(ES*.*.2 %97 A ( 'A6AG(7
*.*.3 '()IA (A'(+O7>
*.*.* %&LI$(
*.*.0 O8(6 GL
*.*.: 7(( $58(
*.*.; +(?>I$ *) LI?7A7I(%
*.*.< %GL
*.*.= %%L
7
8/17/2019 sem rep on epap
6/24
*.*.@ LI?
3.5 A-DRO(D R -T( E
*.0.2 )AL4I> 4I7$9AL 'A I6(
3.% /(- : ,ER-A/
*.:.2 ?I6)(7 )7I4(7
*.:.3 8O+(7 'A6AG('(6$
0. A88LI A$IO6 A6A$O'5
5.$ ACT(V(T6
5." (-TE-T REC(EVER
5.3 SERV(CE
5.5 CO-TE-T *ROV(DER
:. )(4(LO8'(6$ $OOL%
;. A6)7OI) 4(7%IO6%
8/17/2019 sem rep on epap
7/24
(-TROD CT(O- TO A-DRO(D
$he term Android B has its origin in the Greek word andr 2, meaning
man or maleB and the suffix " eide! , used to mean alike or of the s
peciesB. $his together means as much as ;eing human B.
Android is a software stack for mobile devices that includes an
operating system, middleware and key applications. Android is a
software platform and operating system for mobile devices based on the
Linux operating system and developed by Google and the Open
andset Alliance CO AD.
Google Inc. purchased the initial developer of the software, Android Inc.,
in August, 311:, making Android Inc. a wholly"owned subsidiary of
Google Inc. Android operating system is based upon a modified version
of the Linux kernel, which is the most prominent examples of free and
open source software. Google and other members of the Open andset Alliance collaborated on AndroidEs development and release. $he
Android Open %ource 8roFect CAO%8D is tasked with the maintenance
and further development of Android.
$he second section this seminar holds the features of android phones.
It contains connectivity, marketing, browsing etc.
$he third section consists of architecture of the android operatingsystem. $he main components of architecture are Linux kernel, dalvik
virtual machine, libraries, application framework, key applications etc
$he fourth section describes the anatomy of an android application. $he
main topics in this section are activity, intent receiver, service and
content provider.
$he tools used for development of android application are
include9
8/17/2019 sem rep on epap
8/24
$.$ O*E- HA-DSET A//(A-CE<
On the 6ovember :, 311< the Open andset Alliance ,
a consortium of several companies which include ?roadcom
orporation , Google , $ , Intel , LG,'arvell $echnology
Group , 'otorola , 6vidia , &ualcomm , %amsung (lectronics , %print
6extel , $"'obile and $exas Instruments unveiled itself. $he goal
of the Open andset Alliance is to develop open standards for
mobile devices. On the same day, the Open andset Alliance
also unveiled their first product, Android, a mobile
device platform built on the Linux kernel version 3.;.
CHA*TER "
10
http://en.wikipedia.org/wiki/Open_Handset_Alliancehttp://en.wikipedia.org/wiki/Consortiumhttp://en.wikipedia.org/wiki/Broadcom_Corporationhttp://en.wikipedia.org/wiki/Broadcom_Corporationhttp://en.wikipedia.org/wiki/Googlehttp://en.wikipedia.org/wiki/High_Tech_Computer_Corporationhttp://en.wikipedia.org/wiki/Intel_Corporationhttp://en.wikipedia.org/wiki/LG_Grouphttp://en.wikipedia.org/wiki/Marvell_Technology_Grouphttp://en.wikipedia.org/wiki/Marvell_Technology_Grouphttp://en.wikipedia.org/wiki/Motorolahttp://en.wikipedia.org/wiki/Nvidiahttp://en.wikipedia.org/wiki/Qualcommhttp://en.wikipedia.org/wiki/Samsung_Electronicshttp://en.wikipedia.org/wiki/Sprint_Nextelhttp://en.wikipedia.org/wiki/Sprint_Nextelhttp://en.wikipedia.org/wiki/T-Mobilehttp://en.wikipedia.org/wiki/Texas_Instrumentshttp://en.wikipedia.org/wiki/Open_standardhttp://en.wikipedia.org/wiki/Platform_(computing)http://en.wikipedia.org/wiki/Linux_kernelhttp://en.wikipedia.org/wiki/Consortiumhttp://en.wikipedia.org/wiki/Broadcom_Corporationhttp://en.wikipedia.org/wiki/Broadcom_Corporationhttp://en.wikipedia.org/wiki/Googlehttp://en.wikipedia.org/wiki/High_Tech_Computer_Corporationhttp://en.wikipedia.org/wiki/Intel_Corporationhttp://en.wikipedia.org/wiki/LG_Grouphttp://en.wikipedia.org/wiki/Marvell_Technology_Grouphttp://en.wikipedia.org/wiki/Marvell_Technology_Grouphttp://en.wikipedia.org/wiki/Motorolahttp://en.wikipedia.org/wiki/Nvidiahttp://en.wikipedia.org/wiki/Qualcommhttp://en.wikipedia.org/wiki/Samsung_Electronicshttp://en.wikipedia.org/wiki/Sprint_Nextelhttp://en.wikipedia.org/wiki/Sprint_Nextelhttp://en.wikipedia.org/wiki/T-Mobilehttp://en.wikipedia.org/wiki/Texas_Instrumentshttp://en.wikipedia.org/wiki/Open_standardhttp://en.wikipedia.org/wiki/Platform_(computing)http://en.wikipedia.org/wiki/Linux_kernelhttp://en.wikipedia.org/wiki/Open_Handset_Alliance
8/17/2019 sem rep on epap
9/24
)EAT RES
".$ DA/V(, V(RT A/ ACH(-E<
It is extremely low"memory based virtual machine, which was designed
especially for Android to run on embedded systems and work well in low
power situations. It is also tuned to the 89 attributes. $he )alvik 4'
creates a special file format C.)(HD that is created through build time
post processing. onversion between !ava classes and .)(H format is
done by included dxB tool.
"." (-TEGRATED BRO8SER<
Google made a right choice on choosing +eb>it as open source webbrowser. $hey added a two pass layout and frame flattening. $wo pass
layout loads a page without waiting for blocking elements, such as
external %% or external !ava%cript and after a while renders again with
all resources downloaded to the device. rame flattening converts
founded frames into single one and loads into the browser. $hese
features increase speed and usability browsing the internet via mobile
phone.
".3 S4/ite<
11
8/17/2019 sem rep on epap
10/24
%&Lite is used for structured data storage. (xtremely small C :11kbD
relational database management system, which is integrated in Android.
It is based on function calls and single file, where all definitions, tables
and data are stored. $his simple design is more than suitable for a
platform such as Android.
".5 CO--ECT(V(T6<
Android supports a wide variety of connectivity technologies including
G%', )'A, ?luetooth, ()G(, (4)O, *G and +i" i.
".% ESSAG(-G<
%'%, ''%, and H'88 are available forms of messaging including
threaded text messaging.
".' ED(A S **ORT<
Android will support advanced audioJvideoJstill media formats such as
'8(G"0, .3;0, '8*, and AA , A'7, !8(G, 86G, GI .
".7 ADD(T(O-A/ HARD8ARE S **ORT<
Android is fully capable of utili#ing videoJstill cameras, touchscreens,
G8%, compasses, accelerometers, and accelerated *) graphics.
".9 AR,ET<
12
8/17/2019 sem rep on epap
11/24
$he Android 'arket is a catalog of applications that can be downloaded
and installed to Android devices over"the"air, without the use of a 8 .
".= /T(TAS,(-G<
'ultitasking of applications is available.
CHA*TER 3
13
http://en.wikipedia.org/wiki/Android_Markethttp://en.wikipedia.org/wiki/Android_Market
8/17/2019 sem rep on epap
12/24
A-DRO(D ARCH(TECT RE
Architecture of android operating system
3.$ Application!
Android will ship with a set of core applications including an email client,
%'% program, calendar, maps, browser, contacts, and others. All
applications are written using the !ava programming language.
3." Application )rame2or1
14
8/17/2019 sem rep on epap
13/24
%itting above the native libraries and runtime, you/ll find the Application
ramework layer. $his layer provides the high"level building blocks you
will use to create your applications. $he framework comes preinstalled
with Android, but you can also extend it with your own components as
needed.
$he most important parts of the framework are as follows
3.".$ Activity Manager $his controls the life cycle of applications and
maintains a common backstackB for user navigation.
3."." Content providers < $hese obFects encapsulate data that needs
to be shared between applications, such as contacts.3.".3 Resource manager 7esources are anything that goes with your
program that is not code.
!"!# $ocation manager An Android phone always knows where it is.
!"!% &otification manager' (vents such as arriving messages,
appointments, proximity alerts, alien invasions, and more can be
presented in an unobtrusive fashion to the user .!"!( V)E* S+STEM (nabling applications to access data from other
applications or to share their own data
!"! TE$E-./&+ MA&A0ER 8rovides core telephoning
functionalities
!"!1 *)&D/* MA&A0ER' $he window manager creates display
surfaces for the application. It is 7esponsible for organi#ing the screenand display of different Layers of application
3.3 /(BRAR(ES
$he next layer above the kernel contains the Android native libraries.
$hese shared libraries are all written in or KK, compiled for the
particular hardware architecture used by the phone, and preinstalled by
the phone vendor.
15
8/17/2019 sem rep on epap
14/24
%ome of the most important native libraries include the following
i. S R)ACE A-AGER 'anages access to the
display subsystem and seamlessly composites 3) and d
graphic layers from multiple applications.
ii. ED(A /(BRAR(ES $he libraries support playback
and recording of many popular audio and video formats as well
as static image files, including
'8(G0, .3;0,'8*,AA ,A'7,!8G and 86G.
iii. S4/ite A powerful and lightweight relationaldatabase engine available to all applications
iv. O*E- G/ < %ubset of the OpenGL *) graphics A8I
designed for embedded devices. It can use for hardware *)
acceleration.
v. )REE T6*E < ?itmap and vector font rendering. It is
used to rasteri#e the characters into bitmaps and provides intoother font"related operations.
vi. 8e;,it < A framework providing the basis for
building a web browser based on the open source +eb>it
browser .
vii. SG/ < %GL is the underlying 3) graphics engine .
viii. SS/ $he %ecure %ocket Layer is a commonly"usedprotocol for managing the security of a message transmission on
the intrnet.
ix. /i;C < A ?%) M based implementation of the
standard library. +hich is tuned for embedded Linux"based
devices.
16
8/17/2019 sem rep on epap
15/24
3.5 Android Runtime
Android includes a set of core libraries that provides most of the
functionality available in the core libraries of the !ava programming
language.
(very Android application runs in its own process, with its own instance
of the )alvik virtual machine. )alvik has been written so that a device
can run multiple 4's efficiently. $he )alvik 4' executes files in the
)alvik (xecutable C.dexD format which is optimi#ed for minimal memory
footprint. $he 4' is register"based, and runs classes compiled by a
!ava language compiler that have been transformed into the .dex format
by the included NdxN tool.
$he )alvik 4' relies on the Linux kernel for underlying functionalitysuch as threading and low"level memory management.
3.5.$ Dal0i1 Virtual achine
$he )alvik virtual machine is simple !ava interpreter machine,
completely optimi#ed for Androidplatform and which is developed to run on low"end memory mobile
devices. One of the prominent aspects in )alvik its capability to run
along an application compilation enhancing the runtime performance of
the applications. )alvik is not exactly, a !ava machine, because )alvik
could not read !ava code, but consists its own byte code called dexB
and so the executable files compacted using )alvik holds the file type
name E.dexE. Google states that the credit for Androids successful17
8/17/2019 sem rep on epap
16/24
development goes to )alvik 4', because this type of virtual machine,
delivers a good performance over various stages of an application
runtime environment, conserving more battery"power during long run of
an application.
A small drawback with )alvik, is its none"compatibility with !ava %(
libraries, !ava '( class libraries and %wing !ava libraries, while they
cannot be and need not to"be run directly on this virtual machine. It
uses its own Apache armony !ava implementation libraries. )espite of
the earlier reason, its escalated AndroidEs value proposition due to its
minimal"electrical power consumption, vast library resources, and non"fragmentary application programming interface, unlike its !ava rivals.
!ava related brands and trademarks are owned by %un 'icro %ystems
Inc., which is soon to be ac uired by Oracle orporation. Another
significant fact that assures the open source status of Android, is that
%un orp, cannot claim on the usage of !ava"like programming
language, since Android uses a !ava 4irtual execution environment
developed by Google. %18
8/17/2019 sem rep on epap
17/24
$he core >a0a li;rarie! that come with Android are different from both
the !ava %tandard (dition C!ava %(D libraries and the !ava 'obile
(dition C!ava '(D libraries. $here is a substantial amount of overlap,
however.
3.% /inu? ,ernel
Android relies on Linux version 3.; for core system services such as
security, memory management, process management, network stack,and driver model. $he kernel also acts as an abstraction layer between
the hardware and the rest of the software stack.
3.%.$ *o2er anagement
?ased on the standard Linux 8ower 'anagement,, Android has its owncomponent. A light"weight power management diver built top of it. 89
shouldn/t consume power if no applications or services re uire power.
3.%." B(-DER @(*C DR(VER
)river to facilitate inter"process communication between applications
and services. $he binder driver provides high performance throughshared memory, synchronous calls between processes.
19
8/17/2019 sem rep on epap
18/24
8/17/2019 sem rep on epap
19/24
A component , which allows sharing some of the data with other
processes and applications. It is the best way to communicate the
applications between each other .Android will ship with a set of core
applications including an email client, %'% program, calendar, maps,
browser, contacts, and others. All applications are written using the !ava
programming language.
21
8/17/2019 sem rep on epap
20/24
CHA*TER %
DEVE/O* E-T TOO/S
$he Android %)> includes a variety of custom tools that help you
develop mobile applications on the Android platform. $hree of the most
significant tools are
• Android Emulator " A 0irtual mo;ile de0ice that runs on our
omputer "use to design, debug, and test our applications in an
Actual Android run"time environment
• Android De0elopment Tool! *lugin "for the Eclip!e (DE adds
powerful extensions to the (clipse integrated environment
• Dal0i1 De;ug onitor Ser0ice @DD S D "Integrated with Dal0i1
"this tool let us manage processes on an emulator and assists in
debugging
22
8/17/2019 sem rep on epap
21/24
CHA*TER '
A-DRO(D VERS(O-S
Ver!ion Code name Relea!e date A*( le0el Di!tri;ution
'.# & '.#.$ 'arshmallow October :, 312: 3* 3.*P
%.$ & %.$.$
Lollipop
'arch @, 312: 33 [email protected]
%.# & %.#." 6ovember *, 3120 32 2;.@P
5.5 & 5.5.5 >it>at October *2, 312* 2@ *0.*P
5.3 & 5.3.$
!elly ?ean
!uly 30, 312* 2= *.3P
5." & 5."." 6ovember 2*, 3123 2< 22.1P
5.$ & 5.$." !uly @, 3123 2; =.2P
5.# & 5.#.5 Ice ream %andwich )ecember 2;, 3122 2: 3.*P
".3 & ".3.7 Gingerbread ebruary @, 3122 21 3.;P
23
https://en.wikipedia.org/wiki/Application_programming_interfacehttps://en.wikipedia.org/wiki/Application_programming_interfacehttps://en.wikipedia.org/wiki/Android_version_history#Android_6.0_Marshmallow_.28API_level_23.29https://en.wikipedia.org/wiki/Android_Marshmallowhttps://en.wikipedia.org/wiki/Android_version_history#Android_5.1.E2.80.935.1.1_Lollipop_.28API_level_22.29https://en.wikipedia.org/wiki/Android_Lollipophttps://en.wikipedia.org/wiki/Android_version_history#Android_5.0.E2.80.935.0.2_Lollipop_.28API_level_21.29https://en.wikipedia.org/wiki/Android_version_history#Android_4.4.E2.80.934.4.4_KitKat_.28API_level_19.29https://en.wikipedia.org/wiki/Android_KitKathttps://en.wikipedia.org/wiki/Android_version_history#Android_4.3.E2.80.934.3.1_Jelly_Bean_.28API_level_18.29https://en.wikipedia.org/wiki/Android_Jelly_Beanhttps://en.wikipedia.org/wiki/Android_version_history#Android_4.2.E2.80.934.2.2_Jelly_Bean_.28API_level_17.29https://en.wikipedia.org/wiki/Android_version_history#Android_4.1.E2.80.934.1.2_Jelly_Bean_.28API_level_16.29https://en.wikipedia.org/wiki/Android_version_history#Android_4.0.3.E2.80.934.0.4_Ice_Cream_Sandwich_.28API_level_15.29https://en.wikipedia.org/wiki/Android_Ice_Cream_Sandwichhttps://en.wikipedia.org/wiki/Android_version_history#Android_2.3.3.E2.80.932.3.7_Gingerbread_.28API_level_10.29https://en.wikipedia.org/wiki/Android_Gingerbreadhttps://en.wikipedia.org/wiki/Application_programming_interfacehttps://en.wikipedia.org/wiki/Android_version_history#Android_6.0_Marshmallow_.28API_level_23.29https://en.wikipedia.org/wiki/Android_Marshmallowhttps://en.wikipedia.org/wiki/Android_version_history#Android_5.1.E2.80.935.1.1_Lollipop_.28API_level_22.29https://en.wikipedia.org/wiki/Android_Lollipophttps://en.wikipedia.org/wiki/Android_version_history#Android_5.0.E2.80.935.0.2_Lollipop_.28API_level_21.29https://en.wikipedia.org/wiki/Android_version_history#Android_4.4.E2.80.934.4.4_KitKat_.28API_level_19.29https://en.wikipedia.org/wiki/Android_KitKathttps://en.wikipedia.org/wiki/Android_version_history#Android_4.3.E2.80.934.3.1_Jelly_Bean_.28API_level_18.29https://en.wikipedia.org/wiki/Android_Jelly_Beanhttps://en.wikipedia.org/wiki/Android_version_history#Android_4.2.E2.80.934.2.2_Jelly_Bean_.28API_level_17.29https://en.wikipedia.org/wiki/Android_version_history#Android_4.1.E2.80.934.1.2_Jelly_Bean_.28API_level_16.29https://en.wikipedia.org/wiki/Android_version_history#Android_4.0.3.E2.80.934.0.4_Ice_Cream_Sandwich_.28API_level_15.29https://en.wikipedia.org/wiki/Android_Ice_Cream_Sandwichhttps://en.wikipedia.org/wiki/Android_version_history#Android_2.3.3.E2.80.932.3.7_Gingerbread_.28API_level_10.29https://en.wikipedia.org/wiki/Android_Gingerbread
8/17/2019 sem rep on epap
22/24
CHA*TER 7
CO-C/ S(O-
'obile software development has evolved over time. Android has
emerged as a new mobile development platform, building on past
successes and avoiding past failures of other platforms .Android wasdesigned to empower the developer to write innovative applications
.$he platform is open source, with no up"front fees, and developers
enFoy many benefits over other competing platforms.
• Android is open to all industry, developers and users
• 8articipating in many of the successful open source proFects• Aims to be as easy to build for as the web.
• Google Android is stepping into the next level of 'obile Internet
24
8/17/2019 sem rep on epap
23/24
CHA*TER 9
RE)ERE-CES
• http< 222.android.com " Android Official +ebpage
• http< de0eloper.android.com guide ;a!ic! 2hat&i!&
android.html• http< code.google.com android 2hat&i!&android.html
• http< 222.openhand!etalliance.com " Open andset
Alliance +ebpage
• http< 222.android2i1i.com M Android +iki
25
8/17/2019 sem rep on epap
24/24
26
Top Related