Agenda
• What is Android?
– Background of Android
– Android Architecture
• Why Android?
– Openness and Choice
– Rich Feature support
• How to use Android?
– Development tools and SDK
• Q&A
What is Android?
• Open software platform for mobile
development
• A complete stack – OS, Middleware,
Applications
• An Open Handset Alliance (OHA) project
• Powered by Linux operating system
• Fast application development in Java
• Open source under the Apache 2 license
Android Milestones
July 2005, Google acquired Android, Inc.
November 2007, Open Handset Alliance
formed to develop open standards for
mobile devices
October 2008, Android available as open
source
Q4 2010, world's best-selling smartphone
platform
Android Momentum
Mobile Operating system preferences
Android Momentum
79 Hardware , Software, and telecom
companies in the OHA.
21 OEMS, 48 Countries, 59 Carriers
Daily activation rate: crossed1 Lakh
activations a day.
Q4 2010, world's best-selling Smartphone
platform
More than 2Lakh apps and engineers
Android Momentum
Worldwide Smartphone Sales
Android Momentum
Android vs Symbian vs Win Mobile
Android Momentum
Linux Kernel
• Works as a HAL
• Device drivers
• Memory management
• Process management
• Networking
Libraries
• C/C++ libraries
• Interface through Java
• Surface manager – Handling UI Windows
• 2D and 3D graphics
• Media codecs, SQLite, Browser engine
Android Runtime
• Dalvik VM
– Dex files
– Compact and efficient than class files
– Limited memory and battery power
• Core Libraries
– Java 5 Std edition
– Collections, I/O etc…
Application Framework
• API interface
• Activity manager – manages application
life cycle.
• Content Provider- enable applications to
access data from other applications
Application Framework..Cont
• Resource manager- providing access to
non-code resources such as localized
strings, graphics, and layout files
• Notification manager – enables all
applications to display custom alerts in the
status bar
Applications
• Built in and user apps
• Can replace built in apps
• Email client, SMS program, calendar,
maps, browser, contacts
Why Android?
• Openness and Choice.
• Processes are started and stopped as
needed to run an application's
components
• Processes may be killed to reclaim
resources
Features of Android
• Speed of the Apps- DVM - JIT( 5x Speed
than DVM).
• Application data back up API (new android
device)
• Cloud to device messaging API- chrome
extension(android device)-trigger android
intent
Ex:RouteMap,Article,Tethering-MobileHotSpot
Features of Android..Cont
• Android Browser rocks: 2x- 4x Speed
• Orientation ,voice input, video(camera)
• Most comprehensive browser. Support
Flash gaming( Apple don't)
• New ways to
FindApps,SearchInsideApps,MoveAppsTo
SDCard,UpdateAll and Auto Update
Features of Android..Cont
• Meet the needs of developers for a quality
apps. for a quick close of loop
• Over the air GoogleApps Download to the
android device from the browser
– Ex: Apps, Music files
• Audio streaming.(Home music library on
Android device).
Application Lifecycle
• Application run in their own processes
(VM, PID)
• Processes are started and stopped as
needed to run an application's
components
• Processes may be killed to reclaim
resources
Development Tools
• Eclipse
• Android SDK 1.0-2.0
[Link]
The Emulator
• QEMU-based ARM emulator
• Runs the same image as the
device
• Limitations:
– No Camera support
Devices
Q&A