
TUYÊN BỐ BẢN QUYỀN
Tài liệu này thuộc loại sách giáo trình nên các nguồn thông tin có thể được phép
dùng nguyên bản hoặc trích dùng cho các mục đích về đào tạo và tham khảo.
Mọi mục đích khác mang tính lệch lạc hoặc sử dụng với mục đích kinh doanh
thiếu lành mạnh sẽ bị nghiêm cấm.

2
LỜI GIỚI THIỆU
Trong thập kỷ vừa qua, Android đã trở thành một nền tảng phổ biến hơn bao giờ
hết với hơn 1.4 tỷ người dùng và 80% số lượng thiết bị di động sử dụng hệ điều hành
Android. Con số ấn tượng này cũng cho thấy nhu cầu phát triển các ứng dụng chạy trên
hệ điều hành Android. Lập trình ứng dụng dần trở thành công việc với cơ hội nghề
nghiệp rộng mở và mức lương hấp dẫn.
Lập trình thiết bị di động 2 là một trong những mô đun cơ sở ca nghề Ứng dụng
phần mềm được biên soạn dựa theo Bài trình đào tạo đã xây dựng và ban hành năm
2021 ca trường Cao đng nghề Cần Thơ dành cho nghề Ứng dụng phần mềm hệ Cao
đng.
Khi biên soạn, nhóm biên soạn đã dựa trên kinh nghiệm thực tế giảng dạy, tham
khảo đồng nghiệp, tham khảo các giáo trình hiện có và cập nhật những kiến thức mới
có liên quan để phù hợp với nội dung Bài trình đào tạo và phù hợp với mục tiêu đào tạo,
nội dung được biên soạn gắn với nhu cầu thực tế.
Nội dung giáo trình được biên soạn với lượng thời gian đào tạo 45 giờ gồm có:
Bài 1 MĐ29-01: Lưu trữ dữ liệu – SQLITE
Bài 2 MĐ29-02: Quản lý dữ liệu với Content Provider
Bài 3 MĐ29-03: Menu - Action Bar - Toolbar
Bài 4 MĐ29-04: Action Provider, điều khiẻn tìm kiếm và các chuyển hoạt
Bài 5 MĐ29-05: Asynctask - Thread - Handler
Bài 6 MĐ29-06: Service - Broadcast Receiver và Notification
Bài 7 MĐ29-07: Khai thác tài nguyên internet và giao thức kết nối
Webservice
Bài 8 MĐ29-08: Thao tác với dữ liệu XML và JSON
Bài 9 MĐ29-09: Google Map và Google Cloud Messaging
Bài 10 MĐ29-10: Các điều khiển đa truyền thông
Bài 11 MĐ29-11: Telephone & Sms và bộ cảm biến
Mặc dù đã cố gắng tổ chức biên soạn để đáp ứng được mục tiêu đào tạo nhưng
không tránh được những thiếu sót. Rất mong nhận được sự đóng góp ý kiến ca các
thầy, cô và bạn đọc để nhóm biên soạn sẽ điều chỉnh hoàn thiện hơn.
Cần Thơ, ngày tháng năm 2021
Tham gia biên soạn
1. Chủ biên Nguyễn Hoàng Vũ

3
MỤC LỤC
LỜI GIỚI THIỆU ......................................................................................................... 2
MỤC LỤC ...................................................................................................................... 3
GIÁO TRÌNH MÔN HỌC/MÔ ĐUN ......................................................................... 8
BÀI 1: LƯU TRỮ DỮ LIỆU – SQLITE ................................................................... 10
Mã BÀI: MĐ29-01 ....................................................................................................... 10
1. KHÁI NIỆM CƠ SỞ DỮ LIỆU (DATABASE CONCEPTS) ............................. 10
2. GIỚI THIỆU SQLITE .......................................................................................... 10
3. XÂY DỰNG CƠ SỞ DỮ LIỆU VỚI SQLITE .................................................... 11
3.1 Tạo Cơ sở dữ liệu ................................................................................................ 11
3.2 Mở Cơ sở dữ liệu ................................................................................................ 12
4. TRUY VẤN DỮ LIỆU ......................................................................................... 13
4.1 Truy vấn (Query) ................................................................................................ 13
4.1.1 Truy vấn với câu lệnh SQL .............................................................................. 13
4.1.2 Truy vấn với cú pháp hàm ............................................................................... 14
4.2 Quản lý ................................................................................................................ 15
4.2.1 Insert ................................................................................................................ 15
4.2.2 Update .............................................................................................................. 15
4.2.3 Delete ............................................................................................................... 16
5. SẮP XẾP DỮ LIỆU ............................................................................................. 16
5.1 Truy vấn sắp xếp ................................................................................................. 16
5.1.1 Tăng dần (ASCENDING) ................................................................................ 16
5.1.2 Giảm dần (DESCENDING)............................................................................. 16
5.2 Truy vấn gom nhóm ............................................................................................ 16
Bài tập ca học viên .................................................................................................. 18
Hướng dẫn thực hiện ................................................................................................. 18
Những trọng tâm cần chú ý ....................................................................................... 26
Bài mở rộng và nâng cao .......................................................................................... 26
Yêu cầu đánh giá kết quả học tập ............................................................................. 26
BÀI 2: QUẢN LÝ DỮ LIỆU VỚI CONTENT PROVIDER .................................. 28
Mã BÀI: MĐ29 - 02 ..................................................................................................... 28
1. Giới thiệu Content Provider .................................................................................. 28
1.1. Content Provider ............................................................................................ 28
1.2 Lợi ích Content Providers ............................................................................... 29
1.3 Kiến trúc Content Providers ........................................................................... 30
1.3.1. Data and Open Helper ................................................................................ 30
1.3.2. Contract ...................................................................................................... 30
1.3.3. Content Provider ......................................................................................... 30
1.3.4. Content Resolver ........................................................................................ 31
1.4 Content URI .................................................................................................... 31
1.5. ContentResolver ............................................................................................ 31
2. Xây dựng Content Provider cho ứng dụng ........................................................... 33
2.1 Vấn đề xây dựng ContentProvider ................................................................. 33
2.2 Authority & UriMatcher ................................................................................. 33
2.2.1 Authority:..................................................................................................... 34
2.2.2 UriMatcher: ................................................................................................. 34
3. TRUY VẤN DỮ LIỆU HỆ THỐNG VỚI CONTENT PROVIDER .................. 34

4
3.1. Các phương thức điều khiển Cursor ............................................................. 34
3.2 Truy vấn dữ liệu hệ thống .............................................................................. 35
Bài tập ca học viên .................................................................................................. 36
Hướng dẫn thực hiện ................................................................................................. 36
Những trọng tâm cần chú ý: ...................................................................................... 39
Bài mở rộng và nâng cao ........................................................................................... 39
Yêu cầu đánh giá kết quả học tập .............................................................................. 40
BÀI 3 : MENU - ACTION BAR - TOOLBAR ......................................................... 41
Mã BÀI: MĐ29 -03 ...................................................................................................... 41
1. MENU ................................................................................................................... 41
1.1 Option Menu .................................................................................................. 41
1.2 Context Menu ................................................................................................. 42
1.3. PopUp Menu ................................................................................................. 45
2. ACTION BAR ....................................................................................................... 47
2.1 Giới thiệu ....................................................................................................... 47
2.2 Tạo ActionBar ................................................................................................ 49
2.3. Thao tác với ActionBar ................................................................................. 50
3. CHẾ ĐỘ ĐIỀU HƯỚNG ...................................................................................... 52
4. TOOLBAR ............................................................................................................ 53
4.1 Giới thiệu ....................................................................................................... 53
4.1 Tạo ToolBar ................................................................................................... 54
4.2 Thao tác với Toolbar ...................................................................................... 55
Bài tập ca học viên .................................................................................................. 56
Hướng dẫn thực hiện ................................................................................................. 56
Những trọng tâm cần chú ý: ...................................................................................... 69
Bài mở rộng và nâng cao ........................................................................................... 69
Yêu cầu đánh giá kết quả học tập .............................................................................. 70
BÀI 4 : ACTION PROVIDER, ĐIỀU KHIẺN TÌM KIẾM VÀ CÁC CHUYỂN
HOẠT ............................................................................................................................ 71
Mã BÀI: MĐ29 - 04 ..................................................................................................... 71
1. ACTION PROVIDER ........................................................................................... 71
2. ĐIỀU KHIỂN TÌM KIẾM .................................................................................... 72
3. PROPERTY ANIMATION .................................................................................. 75
4 VIEW ANIMATION ............................................................................................. 76
4.1 Tween Animation ........................................................................................... 76
4.2 Frame Animation ........................................................................................... 77
5. DRAWABLE ANIMATION ................................................................................ 78
Bài tập ca học viên .................................................................................................. 79
Hướng dẫn thực hiện ................................................................................................. 79
Những trọng tâm cần chú ý: ...................................................................................... 88
Bài mở rộng và nâng cao ........................................................................................... 89
Yêu cầu đánh giá kết quả học tập .............................................................................. 89
BÀI 5: ASYNCTASK - THREAD - HANDLER ...................................................... 90
Mã BÀI: MĐ29 - 05 ..................................................................................................... 90
1. THREAD VÀ MULTITHREADING ................................................................... 90
1.1 Thread ............................................................................................................ 90
1.2 Multithreading ................................................................................................ 91
1.3 Main Thread và UI Thread, Worker Thread. ................................................. 91

5
1.4 Hiện tượng ANR trong Android. .................................................................... 92
2. ASYNCTASK ...................................................................................................... 93
3. Handler .................................................................................................................. 96
3.1 Giới thiệu ........................................................................................................ 96
3.2 Cách sử dụng Handler .................................................................................... 97
Bài tập thực hành ca sinh viên ................................................................................ 98
Hướng dẫn thực hiện ................................................................................................. 99
Những trọng tâm cần chú ý: ................................................................................... 100
Bài mở rộng và nâng cao ........................................................................................ 101
Yêu cầu đánh giá kết quả học tập ........................................................................... 101
BÀI 6: SERVICE - BROADCAST RECEIVER VÀ NOTIFICATION .............. 102
Mã BÀI: MĐ29 - 06 ................................................................................................... 102
1. SERVICE ............................................................................................................ 102
1.1 Giới thiệu ...................................................................................................... 102
1.2 Tạo Service ................................................................................................... 103
1.3 IntentService ................................................................................................. 105
2. BROADCAST RECEIVER ................................................................................ 106
2.1 Tạo BroadcastReceiver ................................................................................. 106
2.2 Đăng ký BroadcastReceiver ......................................................................... 106
3. NOTIFICATION ................................................................................................ 107
Bài tập thực hành ca sinh viên .............................................................................. 110
Hướng dẫn thực hiện ............................................................................................... 110
Những trọng tâm cần chú ý: ................................................................................... 139
Bài mở rộng và nâng cao ........................................................................................ 140
Yêu cầu đánh giá kết quả học tập ........................................................................... 140
BÀI 7: KHAI THÁC TÀI NGUYÊN INTERNET VÀ GIAO THỨC KẾT NỐI
WEBSERVICE .......................................................................................................... 141
Mã BÀI: MĐ29 - 07 ................................................................................................... 141
1. TỔNG QUAN TÀI NGUYÊN INTERNET ....................................................... 141
1.1 Tài nguyên Internet trên thiết bị di động ...................................................... 141
1.2 Các vấn đề khi kết nối Internet ..................................................................... 141
1.3 Các hình thức kết nối Internet ...................................................................... 142
1.4 Lớp khai báo kết nối ..................................................................................... 142
1.4.1 Thực hiện kết nối Internet (HTTP) ............................................................ 143
1.4.2 Thực hiện kết nối Internet (HTTPS) ......................................................... 143
2 SỬ DỤNG DỊCH VỤ DOWNLOAD MANAGER ............................................ 144
2.1.Giới thiêu đích vụ Download Manager ........................................................ 144
2.2 Khai báo và sử dụng Download Manager .................................................... 144
2.3 Tùy chỉnh thông báo cho Download Manager ............................................. 145
2.4 Chỉ định nơi lưu trữ ...................................................................................... 146
2.5 Truy vấn nội dung tải trong DownloadManager .......................................... 147
3. DỊCH VỤ WEBSERVICE ................................................................................. 147
3.1 Giới thiệu Web Service ................................................................................ 147
3.2 Các chuẩn dịch vụ WEB ............................................................................... 148
4 CÁC LOẠI WEBSERVICE ................................................................................ 148
4.1. Giao thức HTTP .......................................................................................... 148
4.2 SOAP ............................................................................................................ 151
4.3 REST ............................................................................................................ 152

