Android Platform
Android Platform
1. Introduction
2. Platform
3. Software development
4. Overall evaluation
Symbian
Windows Mobile
RIM Blackberry OS
Apple iOS
Google Android
Palm WebOS
Windows Phone 7
Linux Kernel
Native Libraries
Android Runtime
Applicatiion Framework…
Anatomy of an Android application
Creating and deploying an application
Linux kernel
Libraries
Android run time
core libraries
Dalvik virtual machine
application layer
application protocol
Linux OS
Downloaded from
Bruce Scharlau, FaaDoOEngineers.com
University of Aberdeen, 2010
The Dalvik runtime is optimised
for mobile applications
• Works as a HAL
• Device drivers
• Memory management
• Process management
• Networking
• C/C++ libraries
• Interface through Java
• Surface manager – Handling UI Windows
• 2D and 3D graphics
• Media codecs, SQLite, Browser engine
• 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…
• API interface
• Activity manager – manages application
life cycle.
code
Autogenerated
files resource list
images
UI layouts
constants
Downloaded from
Bruce Scharlau, FaaDoOEngineers.com
University of Aberdeen, 2010
Standard components form
building blocks for Android apps
Notifications
Has life-cycle
Activity
screen
Views
App to handle content
Intents
Background app
Service Like music player
manifest
Downloaded from
Bruce Scharlau, FaaDoOEngineers.com
University of Aberdeen, 2010
Android applications have
common
Views such as structure
lists, grids, text An Activity Manager that
boxes, buttons, manages the life cycle of
and even an applications and provides
embeddable web a common navigation
browser backstack
Downloaded from
Bruce Scharlau, FaaDoOEngineers.com
University of Aberdeen, 2010
Application Fundamentals
Activities
application presentation layer
Services
invisible components, update data sources, visible activities, trigger notifications
perform regular processing even when app is not active or invisible
Content Providers
shareable data store
Intents
message passing framework
broadcase messages system wide, for an action to be performed
Broadcast receivers
consume intent broadcasts
lets app listen for intents matching a specific criteria like location
Notifications
Toast notification
Status Bar Notification
Dialog notification
http://www.android.com
http://http://androiddevelopers.blogspot.c
om
http://developer.motorola.com/