07-04-2011, 04:28 PM
[attachment=11877]
ANDROID OS
Next Generation Mobile Computing
What is ANDROID?
Mobile Operating System
based on Linux 2.6 kernel
July 2005; Google acquired Android Inc.
5 Nov 2007; Open HandSet Alliance form
Google, HTC, Intel, Motorola, Qualcomm, T-Mobile
12 Nov 2007; OHA released a preview of the Android os
21 oct 2008:Google relese all code under apache license
Android is a software stack
Operating System
Middleware
Applications Framework
Android Features
Application Framework
Enabling reuse & replacement of component
Dalvik Virtual Machine
Optimized for mobile devices
Integrated Browser
Based on open source WebKit engine
Android Features
Optimized graphics
powered by custom 2D graphics library 3D based on openGL
ES 1.0 specification
SQlite
Structured data storage
Media Support
common audio,video and image format
Android Features
GSM telephony (hardware dependant)
Bluetooth,EDGE,3G,Wi-Fi(hardware dependant)
Camera ,GPS (hardware dependant)
Rich Development Environment
SDK include device emulator, debugger, memory &
performance profiling , plugin for Eclipse IDE
ANDROID ARCHITECTURE
Linux Kernel
Linux Version 2.6 as - h/w abstraction layer
Proven driver model
Security, Memory & Process Management
Efficient computing resource management
Stable and proven for mobile platform
Libraries
Written in C/C++ - System C Library(libc)
Surface manager - composing different drawing screens
Display/Graphics(SGL)-for 2D graphics
OpenGLES – 3D Graphics Library
Media Libraries
SQLite –RDB engine-light weight
LibWebCore–web browser engine–embeddable web view
Android Runtime
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
Application Framework
Techniques for saving data
SQLite Databases: relational database library for storing and managing complex data
Files: you can create, write, and read files from the local storage or external media (SD Cards)
FileOutputStream, FileInputStream, and Resources classes.
The Dalvik Virtual Machine
Interpreter only machine optimized for use on low powered, low memory devices like phones
Dalvik uses the Java programming language but not the JVM
Dalvik is not a Java virtual machine.
It uses bytecode format called “dex”.
ANATOMY OF APPLICATION DEVELOPMENT
SDK
Google provide 3 version Windows, Mac OSX and Linux.
developer can use Android plugin for Eclipse IDE
step1ecompose prospective application into following
component
Activity-visual user interface
Intent Receiver-e-mail inbox
Sevice –task done in background
Content Provider-share some data
step2redefine all component in AndroidManifest.xml file.
ANATOMY OF APPLICATION DEVELOPMENT
There is the activity Creator script, which generates the following files and folders in your Eclipse workplace:
- AndroidManifest.xml file
- Build.xml – an ant file which is used to package an
application;
- src/ - source directory
- bin/ - the output directory
R.Java file created it index to all above file DDMS (Dalvik Debug Monitor Server) For debugging & testing
DEVELOPMENT TOOL
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
Android Development Tools Plugin -for the Eclipse IDE – adds powerful extensions to the Eclipse integrated environment
Dalvik Debug Monitor Service (DDMS) -Integrated with Dalvik-this tool let us manage processes on an emulator and assists in debugging
Life cycle of application
A foreground process
A visible process
A service process
A background process
An empty process
APPLICATION
CONCLUSION
Android is a disruptive technology, which was introduced initially on mobile handsets, but has much wider potential.