Difference between revisions of "Android Concepts"

From CDOT Wiki
Jump to: navigation, search
(Android Architecture)
(Android Architecture)
Line 14: Line 14:
 
Key principles
 
Key principles
  
'''1. Linux Kernel''' - proven driver model, memory and process management, etc. (a core service of a reliable operating system)
+
'''1. Linux Kernel''' - proven driver model, memory and process management, etc. (all the core services of a reliable operating system)
  
 
'''2. Libraries''' (written in C/C++)
 
'''2. Libraries''' (written in C/C++)
Line 43: Line 43:
 
3.2 Dalvik Virtual Machine runs '''dex files''' (bytecodes efficient for small processors)
 
3.2 Dalvik Virtual Machine runs '''dex files''' (bytecodes efficient for small processors)
  
'''4. Application Framework'''
+
'''4. Application Framework''' written completely in Java Programming Language
 +
 
 +
{| class="wikitable" border="1"
 +
! Application !! Functionality
 +
|-
 +
| '''Activity Manager''' || life cycle of an application - common back stack
 +
|-
 +
| Package Manager || keeps track the applications installed of the device
 +
|-
 +
| Window Manager || an abstraction layer on top of surface manager
 +
|-
 +
| Telephony Manager || Api for telephony applications
 +
|-
 +
| '''Content Providers''' || application framework that allow applications to share data
 +
|-
 +
| Resource Manager || used to store localized layouts, strings, bitmaps, etc.
 +
|-
 +
| View System || building blogs of the UI, handles the event dispacher, drawing, etc.
 +
|-
 +
| Notification Manager || anables apps to recognize and display common alerts in the status bar
 +
|
 +
|}

Revision as of 11:53, 8 March 2011

What is Android

Android is a software product for mobile devices that has three major parts:

  1. operating system
  2. middleware
  3. applications framework

Android Architecture

Here are the major components based on this [source]

System-architecture.jpg

Key principles

1. Linux Kernel - proven driver model, memory and process management, etc. (all the core services of a reliable operating system)

2. Libraries (written in C/C++)

Component Responsability
Surface Manager composing drawing surface onto the screen
ES & SGL core of graphics libraries
Media Framework core media: mpeg, mp3, all video formats, etc.
FreeType an engine for rendering fonts
SQLite core of data storage
WebKit an open source web browser engine
SSL security socket layer


3. Android Runtime

3.1 Core Libraries written in JAVA such as: utils, collection, i/o, etc.

3.2 Dalvik Virtual Machine runs dex files (bytecodes efficient for small processors)

4. Application Framework written completely in Java Programming Language

Application Functionality
Activity Manager life cycle of an application - common back stack
Package Manager keeps track the applications installed of the device
Window Manager an abstraction layer on top of surface manager
Telephony Manager Api for telephony applications
Content Providers application framework that allow applications to share data
Resource Manager used to store localized layouts, strings, bitmaps, etc.
View System building blogs of the UI, handles the event dispacher, drawing, etc.
Notification Manager anables apps to recognize and display common alerts in the status bar