AN OPEN HANDSET ALLIANCE

PROJECT
presented
by
T.Aditya
2
OVERVIEW
1. Open Handset Alliance
2. Introduction To Android
3. Introduction To The Platform
4. Android Architecture
5. Anatomy Of An Android Application
6. Android Building Blocks
7. Development Tools
8. Life Cycle Of An Android Application
9. Conclusion
3
Open Handset Alliance produces
Android.
It comprises handset manufacturers,
software firms, mobile operators,
Commercialization companies and
Semiconductor companies.
Android is part of the „Build a better
phone‟ process
4
Open Handset Alliance Members
5
INTRODUCTION
TO
ANDROID
WHAT IS ANDROID?


o A complete & modern embedded operating system

o A cutting-edge mobile user experience

o A world-class software stack for building
applications

o An open platform for developers, users & industry


6
Why Android Was Created?

 Full phone software stack including applications
 Designed as a platform for software development
 Android is open
 Android is free
 Community support
 100% Java Phone
7
HISTORY

 July 2005
Google acquired Android Inc.
 5 Nov 2007
Open HandSet Alliance formed-
Google, HTC, Intel, Motorola, Qualcomm, T-Mobile
 Android is the OHA first product
 12 Nov 2007
OHA released a preview of the Android OHA

8
INTRODUCTION
TO
THE PLATFORM : ANDROID
9
10
Cellular networking : GSM, EDGE, 3G (hardware dependent)
LAN : Bluetooth, and Wi-Fi (hardware dependent)
Graphics Hardware Acceleration
Camera, GPS and Compass (hardware dependent)
Touch screen and accelerometer for motion sensing
Integrated browser based on the open source WebKit engine
SQLite for relational data storage
Media support for common audio, video, and still image formats
(MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)
Dalvik Virtual Machine optimized for mobile devices
Android Features
ANDROID ARCHITECTURE

11
Enable applications access data from other applications ,sharing

Providing access to non-code resources
Enables all applications to display alerts in the status bar
Manages the lifecycle of applications
12
Application Framework

13
COMMON FILE STRUCTURE FOR
APPLICATIONS
code
images
files
UI layouts
constants
Autogenerated
resource list

 Written in C/C++ - System C Library. Specially named as
Bionic (libc).

 Display/Graphics called as Skia Graphics
Library (SGL)

 Media Libraries

 SQLite –RDB engine-light weight

 LibWebCore –web browser engine–embeddable web
view

14
Libraries


Linux Version 2.6
Security, Memory & Process Management
Proven driver model
Efficient computing resource management
Stable and proven OS for mobile platform


15
Linux Kernel

 Includes a set of core libraries that provides most of the
functionality-JAVA

 Every Android application runs in its own process

 Dalvik VM executes files in the (.dex) format

 Device can run multiple VMs efficiently

16
Android Runtime

17
ANDROID APPLICATIONS ARE COMPILED TO
DALVIK BYTE CODE
Write app in Java
Compiled in Java
Transformed to Dalvik byte code
Linux OS
Loaded into Dalvik VM
18
Anatomy of an Android Application

There are four building blocks for an Android application:

Activity
-a single screen

Intent Receiver
-to execute in reaction to an external event(Phone Ring)
Service
-code that is long-lived and runs without a UI(Media Player)

Content Provider
-an application's data to be shared with other applications

Android applications have common
structure
Views such as
lists, grids, text
boxes, buttons,
and even an
embeddable web
browser
Content
Providers that
enable
applications to
access data from
other applications
(such as
Contacts), or to
share their own
data
A Resource Manager,
providing access to non-
code resources such as
localized strings,
graphics, and layout files
A Notification Manager
that enables all apps to
display custom alerts in the
status bar
An Activity Manager that
manages the life cycle of
applications and provides
a common navigation
backstack
20
Android applications have common
structure
Broadcast
receivers can
trigger intents that
start an application
Data storage
provide data for
your apps, and
can be shared
between apps –
database, file,
and shared
preferences
(hash map) used
by group of
applications
Services run in the
background and have
no UI for the user –
they will update data,
and trigger events
Intents specify what
specific action should be
performed
Activity is the presentation
layer of your app: there will
be one per screen, and the
Views provide the UI to the
activity
21
Development Tools

The Android SDK includes a variety of custom tools that help you develop
mobile applications on the Android platform.Three of the most significant
tools are:

1. Android Emulator -A virtual mobile device that runs on our computer -
use to design, debug, and test our applications in an actual Android run-
time environment

2. Android Development Tools Plugin -for the Eclipse IDE - adds powerful
extensions to the Eclipse integrated environment

3. Dalvik Debug Monitor Service (DDMS) -Integrated with Dalvik -this tool
let us manage processes on an emulator and assists in debugging
22
Life Cycle of an Android Application


An unusual and fundamental feature - process's lifetime is not directly
controlled by the application itself

Deciding factors:
how important
overall memory available

To determine which processes should be killed when low on memory:
"importance hierarchy“
23

“Importance Hierarchy” (in Order Of Importance)

Foreground Process -required for what the user is currently doing

Visible Process -holding an Activity - visible to the user on-screen but not
in the foreground (on pause)

Service Process -holding a Service - not directly visible to the user-
relevant tasks

Background Process -holding an Activity - not visible to the user - can kill
at any time (stopped)

Empty Process -doesn't hold any active application components(as a cache
to improve start-up time)
24
There are a host of advantages that Google‟s Android will derive from being an
open source software. Some of the advantages include:

• The ability for anyone to customize the Google Android platform
• The consumer will benefit from having a wide range of mobile applications to
choose from since the monopoly will be broken by Google Android
• Features like weather details, opening screen, live RSS feeds and even the
icons on the opening screen will be able to be customized
• As a result of many mobile phones carrying Google Android, companies will
come up with such innovative products like the location
• In addition the entertainment functionalities will be taken a notch higher by
Google Android being able to offer online real time multiplayer games
Advantages

25
Bluetooth limitations
o Android doesn't support:
 Bluetooth stereo
 Contacts exchange
 Modem pairing
 Wireless keyboards
But it'll work with Bluetooth headsets, but that's about it
Limitations

26
ANDROID IS GROWING
Does not include iTouch or iPad, as not smartphones
Uneven distribution of OS by regions
CONCLUSION

 Android is open to all: industry, developers and users

 Participating in many of the successful open source
projects

 Aims to be as easy to build for as the web.

 Google Android is stepping into the next level of
Mobile Internet

27
THANK YOU

Queries?