Datasheet

14
CHAPTER 1 HELLO, ANDROID
Third-Party Apps
Location-Based
Services
Application Layer
Developer Apps
Native Apps
(Contacts, Maps, Browser, etc.)
Power
Management
Linux Kernel
Memory
Management
Process
Management
Hardware Drivers
(USB, Display, Bluetooth, etc.)
Application Framework
Content
Providers
Window
Manager
Activity
Manager
Package
Manager
Telephony P2P/XMPP Notifications Views
Resource
Manager
Graphics
(OpenGL, SGL, FreeType)
Libraries Android Run Time
Media SSL & Webkit Android Libraries
Iibc SQLite
Surface
Manager
Dalvik
Virtual Machine
FIGURE 1-1
Application framework The application framework provides the classes used to create
Android applications. It also provides a generic abstraction for hardware access and manages
the user interface and application resources.
Application layer All applications, both native and third-party, are built on the application
layer by means of the same API libraries. The application layer runs within the Android run
time, using the classes and services made available from the application framework.
The Dalvik Virtual Machine
One of the key elements of Android is the Dalvik virtual machine. Rather than use a traditional Java vir-
tual machine (VM) such as Java ME (Java Mobile Edition), Android uses its own custom VM designed
to ensure that multiple instances run efficiently on a single device.