Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Linux kernel
Libraries
Android run time
core libraries
Dalvik virtual machine
application layer
application framework
Linux Kernel
Device drivers
Memory management
Process management
Networking
Libraries
C/C++ libraries
Interface through Java
Surface manager – Handling UI Windows
2D and 3D graphics
Media codes, SQLite, Browser engine
Android Runtime
• 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…
Providing most of the functionality available in the core
libraries of the Java language.
Application Framework
API interface :
Activity manager – manages application life cycle APIs
Android provides a set of core applications: Data
Email Client Structures
SMS Program Utilities
Calendar File Access
Maps Network
Browser Access
Contacts,Etc. Graphics
Etc
All applications are written using the Java language.
Android Application Development
Android
Android Mobile
Emulator Device
Android Development
Java Source
Android
Manifest
Generated Java .dex Dalvik
Class Compiler File VM
Resource
XML
Android
Libraries
Android Development Tool
Komponen Android
Activity Views Intent
Broadcast Content
Service
receiver provider
Komponen android…
Acvitivy
“User interface yang bisa digunakan untuk
berinteraksi antara user dengan aplikasi”
activity
Komponen android…
views
views
Komponen android…
intent
intent
Komponen android…
BroadcastReceiver
• a component that responds to system-wide
broadcast announcements
• Example 1 : Batteray low
• Example 2 : screen has turned off
• Example 3 : picture was captured
BroadcastReceiver
Komponen android…
Service
• a component that runs in the background
to perform long-running operations or to
perform work for remote processes
• No need User Interface
• Example 1 : music player
• Example 2 : Tweeter App when fetching
new tweet
• Example 3 : perform file I/O
Service
Komponen android…
Content Provider
• A content provider manages a shared set of
application data
• No need User Interface
• Example 1 : manage User Contact
• Example 2 : manage SQLite database
Content Provider
Multiple Screen
Supporting different device
Multiple screen