Professional Documents
Culture Documents
Bai 2. Kien Truc Android
Bai 2. Kien Truc Android
KIẾN TRÚC
HỆ ĐIỀU HÀNH
ANDROID
N G U Y Ễ N C H Í H I Ế U
NỘI DUNG
N g u y ễ n C h í H i ế u 2 0 2 1 2
2
06/09/2021
KI Ế N T RÚ C H Ệ Đ I ỀU
H À N H A N D ROID
• Android là một hệ điều hành mã
nguồn mở dựa trên nền tảng Linux.
• Kiến trúc Android gồm một ngăn
xếp (stack) của nhiều thành phần
khác nhau.
• Được chia thành 6 phần với 5 tầng
như sơ đồ.
N g u y ễ n C h í H i ế u 2 0 2 1 3
LINUX KERNEL
4
06/09/2021
ANDROID
RUNTIME (ART)
N g u y ễ n C h í H i ế u 2 0 2 1 6
6
06/09/2021
NATIVE C/C++
N g u y ễ n C h í H i ế u 2 0 2 1 7
JAVA API
API được viết bằng ngôn ngữ Java giúp
FRAMEWORK xây dựng ứng dụng.
• Bộ quản lý activity
• Bộ quản lý package
• Bộ quản lý resource
•…
N g u y ễ n C h í H i ế u 2 0 2 1 8
8
06/09/2021
SYSTEM APPS
N g u y ễ n C h í H i ế u 2 0 2 1 9
N g u y ễ n C h í H i ế u 2021 1 0
10
06/09/2021
Activity
Service
Content Provider
Broadcast Receiver
N g u y ễ n C h í H i ế u 2 0 2 1 1 1
11
ACTIVITY
• Là một màn hình hiển thị giao
diện để người dùng tương tác
với ứng dụng thông qua sự
kiện: touch, click, …
• Mỗi ứng dụng gồm nhiều
activity, nhưng mỗi activity
hoạt động độc lập với nhau.
• Lớp đối tượng Activity.
N g u y ễ n C h í H i ế u 2 0 2 1 1 2
12
06/09/2021
N g u y ễ n C h í H i ế u 2 0 2 1 1 3
13
14
06/09/2021
BR OA D CA ST R E CE IV ER
• Là bộ phản hồi các thông báo
trong phạm vi toàn hệ thống.
• Không có giao diện, nhưng có thể
cảnh báo qua thanh trạng thái.
• Broadcast Receiver: hệ thống hay
ứng dụng tạo ra.
• Lớp đối tượng BroadcastReceiver
2019
N g u y ễ n C h í H i ế u 2 0 2 1 1 5
15
N g u y ễ n C h í H i ế u 2 0 2 1 1 6
16
06/09/2021
N g u y ễ n C h í H i ế u 2 0 2 1 1 7
17
N g u y ễ n C h í H i ế u 2 0 2 1 1 8
18
06/09/2021
N g u y ễ n C h í H i ế u 2 200 12 91 11 9
19
N g u y ễ n C h í H i ế u 2 0 2 1 2 0
20
06/09/2021
1 2 3
Ví dụ 1. Lấy tiêu đề Ví dụ 2. Lấy về dữ Ví dụ 3. Lấy màu sắc
ứng dụng. liệu tĩnh là một chủ đạo (primary)
mảng kiểu String. của ứng dụng.
21
Tập tin AndroidManifest.xml được lưu thư mục gốc của ứng dụng.
…
Quyền truy xuất của sử dụng như: Phiên bản Android
ứng dụng (uses- Activity, Services, SDK tương thích
permission) Broadcast Receiver, (uses-sdk)
Content Provider.
22
06/09/2021
23
GRADLE TRONG
ANDROID
N g u y ễ n C h í H i ế u 2021 2 4
24
06/09/2021
C Á C T Ậ P T I N G RA DLE
• Gradle là một công cụ biên dịch
mã nguồn mở được tích hợp vào
Android Studio.
• Gradle có thể được cấu hình bởi
• Project gradle: cấu hình
chung cho tất cả modules
• Module gradle: cấu hình ở cấp
độ module
N g u y ễ n C h í H i ế u 2 0 2 1 2 5
25
N g u y ễ n C h í H i ế u 2 0 2 1 2 6
26
06/09/2021
BUILD.GRADLE
(PROJECT)
N g u y ễ n C h í H i ế u 2 0 2 1 2 7
27
BUILD.GRADLE (MODULE)
• Cấu hình liên quan đến android
• buildToolsVersion: phiên bản của các trình biên dịch
(aapt, dx, …)
• compiledSdkVersion: phiên bản SDK của Android
• minSdkVersion: phiên bản SDK Android cũ nhất mà ứng
dụng hỗ trợ
• targetSdkVersion: phiên bản SDK Android mới nhất mà
ứng dụng hỗ trợ
N g u y ễ n C h í H i ế u 2 0 2 1 2 8
28
06/09/2021
17.0.1
BUILD.GRADLE (MODULE)
implementation 'com.google.android.gms:play-services-maps:17.0.1'
implementation 'com.google.firebase:firebase-database:20.0.1'
implementation 'com.squareup.retrofit2:retrofit:2.4.0'
N g u y ễ n C h í H i ế u 2 0 2 1 2 9
29