Bài 1: Tổng quan
1. Hệ điều hành Android
2. Kiến trúc
3. Đặc điểm
4. Các phiên bản
5. Phát triển ứng dụng Android
6. Android API
7. Environment setup
Giới thiệu Android OS
Hệ điều hành mã nguồn mở
Dựa trên Linux
Dành cho thiết bị di động
Được phát triển bởi OHA (Open Handset
Alliance)
Source: GNU General Public License
Mobile OS được sử dụng nhiều nhất (1 tỉ
thiết bị, khắp gần 200 quốc gia)
Giới thiệu
Kiến trúc
Bao gồm các software component
4 tầng chính
Application
Application framework
Libraries
Linux kernel
Kiến trúc
Linux kernel
3.x
Tầng trừu tượng giữa phần cứng và driver
(camera, keypad, display)
Hỗ trợ networking tốt, nhiều driver của các
loại thiết bị khác nhau
Libraries
Open-source Web browser engine WebKit
SQLite database
Play and record audio and video
SSL responsible for Internet security
…
Android Runtime: Dalvik Virtual Machine
Quản lý bộ nhớ
Đa luồng
Giúp lập trình viên sử dụng ngôn ngữ Java chuẩn
Libraries
android.app
android.content
android.database
android.opengl
android.os
android.text
android.view
android.widget
android.webkit
Application Framework
High level service (java class)
Gồm:
Activity Manager: quản lý vòng đời ứng dụng và
các activity
Content Providers: publish và share dữ liệu với
ứng dụng khác
Resource Manager: truy cập, quản lý tài nguyên:
chuỗi, thiết lập màu, layout,…
Notifications Manager: hiển thị cảnh báo, thông
báo
View System: tạo UI
Applications
Viết
Cài đặt
Đặc điểm
Beautiful UI: beautiful and intuitive
Connectivity: GSM/EDGE, IDEN, CDMA, EV-DO,
UMTS, Bluetooth, Wi-Fi, LTE, NFC and WiMAX
Storage: SQLite
Media support: H.263, H.264, MPEG-4 SP, AMR,
AMR-WB, AAC, HE-AAC, AAC 5.1, MP3, MIDI,
Ogg Vorbis, WAV, JPEG, PNG, GIF, and BMP
Messaging: SMS and MMS
Web browser: WebKit layout engine, Chrome's
JavaScript engine (HTML5, CSS3)
Đặc điểm
Multi-tasking
Multi-touch
Resizable widgets
Multi-Language
GCM: Google Cloud Messaging
Wi-Fi Direct
Android Beam: NFC-based technology
Phiên bản
Đặt tên: A - M
First beta (SDK): released by Google –
2007
1.0: 2008
6/2012: 4.1 (Jelly Bean) – phiên bản cải
tiến hướng đến UI, tính năng, hiệu năng
Phiên bản
Ứng dụng Android
Lập trình Android
Bộ công cụ phát triển SDK
Ngôn ngữ lập trình chính là Java
API
Đóng gói và phân phối dễ dàng
Google Play
Opera Mobile Store
Mobango,F-droid
Amazon Appstore
Công cụ phát triển
Java JDK
Android SDK
Java Runtime Environment (JRE)
Android Studio
Eclipse IDE for Java Developers (optional)
Android Development Tools (ADT) Eclipse
Plug-in (optional)
Android API
Platform Version
Android 5.1
Android 5.0
Android 4.4W
Android 4.4
Android 4.3
API
Level
22
21
20
19
18
Android 4.2, 4.2.2
17
Android 4.1, 4.1.1
16
VERSION_CODE
LOLLIPOP_MR1
LOLLIPOP
KITKAT_WATCH
KITKAT
JELLY_BEAN_MR
2
JELLY_BEAN_MR
1
JELLY_BEAN
Android API
Platform Version
Android 4.0, 4.0.1,
4.0.2
Android 3.2
API
Level
14
13
Android 3.1.x
12
Android 3.0.x
Android 2.3.4
Android 2.3.3
Android 2.3.2
11
10
9
VERSION_CODE
ICE_CREAM_SAN
DWICH
HONEYCOMB_MR
2
HONEYCOMB_MR
1
HONEYCOMB
GINGERBREAD_
MR1
GINGERBREAD
Environment Setup
Cho nhiều nền tảng
Từ Microsoft Windows XP
Từ Mac OS X 10.5.8 (Intel chip)
Linux theo GNU C Library 2.7 trở đi
Bài 2: Các thành phần
ứng dụng Android
1. Activities
2. Services
3. Broadcast Receivers
4. Content Providers
5. Khác
6. Hello World example (Android Studio và tổ chức
resource)
Application Components
Các thành phần xây dựng chương trình
Gắn với AndroidManifest.xml (mô tả các
thành phần ứng dụng và cách thức tương tác)
Main component:
Activities: điều khiển UI
Services: background processing + application
Broadcast Receivers: quản lý giao tiếp giữa Android
OS và applications.
Content Providers: quản lý dữ liệu
Khác: Views, Layouts, Intents, Resources, Manifest,…
Activities
Single screen with a user interface
shows a list of new emails
compose an email
reading emails
Phải chỉ ra activity chính khi có từ 2
activity trở lên
public class MainActivity extends Activity {..}
Services
Background thực hiện các tác vụ
Ex: chơi nhạc khi người dùng chạy ứng dụng khác
Download dữ liệu
public class MyService extends Service {..}