Difference between revisions of "Android Concepts"
(→Android Architecture) |
(→Android Architecture) |
||
Line 14: | Line 14: | ||
Key principles | Key principles | ||
− | '''1. Linux Kernel''' - proven driver model, memory and process management, etc. ( | + | '''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
Main Page · Course Description · Course Topics · Schedule, Students, Teams · Course Resources · Course Projects
What is Android
Android is a software product for mobile devices that has three major parts:
- operating system
- middleware
- applications framework
Android Architecture
Here are the major components based on this [source]
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 |