TRƯỜNG ĐẠI HỌC TÀI NGUYÊN VÀ MÔI TRƯỜNG HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
XÂY DỰNG ỨNG DỤNG TIN TỨC VIDEO
TRÊN NỀN TẢNG ANDROID
HÀ NỘI - 2017
TRƯỜNG ĐẠI HỌC TÀI NGUYÊN VÀ MÔI TRƯỜNG HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
PHẠM THÀNH ĐÔN
ĐỒ ÁN TỐT NGHIỆP
XÂY DỰNG ỨNG DỤNG TIN TỨC VIDEO
TRÊN NỀN TẢNG ANDROID
Chuyên ngành : Công nghệ Thông tin
Mã ngành
: 52480201
NGƯỜI HƯỚNG DẪN: ThS. NGUYỄN THỊ HỒNG HƯƠNG
HÀ NỘI - 2017
LỜI CAM ĐOAN
Tôi xin cam đoan đây là sản phẩm nghiên cứu độc lập của riêng tôi. Các số liệu
sử dụng phân tích trong luận án có nguồn gốc rõ ràng, đã công bố theo đúng quy
định. Các kết quả nghiên cứu trong đồ án do tôi tự tìm hiểu, phân tích một cách
trung thực, khách quan và phù hợp với thực tiễn của Việt Nam. Các kết quả này
chưa từng được công bố trong bất kỳ nghiên cứu nào khác.
Sinh viên thực hiện
Phạm Thành Đôn
LỜI CẢM ƠN
Trước tiên em xin gửi lời cám ơn chân thành sâu sắc tới các thầy cô giáo
trong trường Đại học Tài Nguyên và Môi Trường nói chung và các thầy cô giáo
trong khoa Công nghệ Thông tin nói riêng đã tận tình giảng dạy, truyền đạt cho em
những kiến thức, kinh nghiệm quý báu trong suốt thời gian qua.
Đặc biệt em xin gửi lời cảm ơn đến cô Nguyễn Thị Hồng Hương, cô đã tận
tình giúp đỡ, trực tiếp chỉ bảo, hướng dẫn em trong suốt quá trình làm đồ án tốt
nghiệp. Trong thời gian làm việc với cô, em không ngừng tiếp thu thêm nhiều kiến
thức bổ ích mà còn học tập được tinh thần làm việc, thái độ nghiên cứu đề tài
nghiêm túc, hiệu quả, đây là những điều rất cần thiết cho em trong quá trình học tập
và công tác sau này.
Sau cùng xin gửi lời cảm ơn chân thành tới gia đình, bạn bè đã động viên,
đóng góp ý kiến và giúp đỡ trong quá trình hoàn thành đồ án tốt nghiệp!
MỤC LỤC
LỜI CAM ĐOAN
LỜI CẢM ƠN
MỤC LỤC
DANH MỤC TỪ VIẾT TẮT
DANH MỤC CÁC BẢNG
DANH MỤC HÌNH
MỞ ĐẦU .......................................................................................................... 1
1. Lý do lựa chọn đề tài ..................................................................................... 1
2. Mục tiêu nghiên cứu đề tài ............................................................................ 1
3. Đối tượng và nội dung nghiên cứu................................................................ 1
4. Phương pháp tiếp cận nghiên cứu ................................................................. 2
5. Bố cục của đồ án tốt nghiệp .......................................................................... 2
CHƯƠNG 1: GIỚI THIỆU HỀ ĐIỀU HÀNH ANDROID ......................... 3
1.1 Lịch sử phát triển [1] ............................................................................... 3
1.2 Kiến trúc của Android [1] ....................................................................... 4
1.2.1 Linux Kernel .................................................................................... 4
1.2.2 Library và Android Runtime ............................................................ 6
1.2.3 Framework ....................................................................................... 7
1.2.4 Aplication ......................................................................................... 8
1.3 Các thành phần ứng dụng Android [2].................................................... 9
1.3.1 Thành phần của một chương trình Android ..................................... 9
1.3.2 Bắt sự kiện trong Android.............................................................. 15
1.3.3 Menu .............................................................................................. 16
1.3.4 Service ............................................................................................ 16
1.3.5 Broadcast Receive .......................................................................... 17
1.3.6 Content Provider ............................................................................ 18
1.3.7 Mainifest File ................................................................................. 18
1.3.8 Giao diện người dùng trong Android............................................. 19
1.4. Media Player Android [3] .................................................................... 19
1.4.1 Khát quát về Media Play Android ................................................. 19
1.4.2 Mô tả phương thức ......................................................................... 19
1.5. Mô hình làm việc MVP [1] .................................................................. 20
1.5.1 Mô hình MVP ................................................................................ 20
1.5.2 Khác nhau giữa MVC và MVP ...................................................... 21
1.5.3 Các điểm quan trọng khi sử dụng mô hình MV ............................. 22
1.5.4 Lợi ích của mô hình làm việc MVP ............................................... 22
CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG TIN TỨC
VIDEO ............................................................................................................ 23
2.1 Mô tả bài toán xem tin tức video .......................................................... 23
2.1.1 Giới thiệu về firebase ..................................................................... 23
2.1.2 Quy trình xem một tin tức video .................................................... 24
2.1.3 Quy trình nhận xét về video ........................................................... 25
2.1.4 Quy trình chia sẻ video .................................................................. 25
2.1.5 Quy trình lưu video ........................................................................ 25
2.1.6 Thông tin cần thiết của một video.................................................. 25
2.2 Mô hình usecase .................................................................................... 26
2.2.1 Biểu đồ Usecase tổng quát ............................................................. 26
2.2.2 Biểu đồ Usecase phân rã: ............................................................... 27
2.2.3 Mô tả chi tiết các usecase phía người dùng ................................... 29
2.2.4 Phân tích chi tiết các usecase phía người quản trị ......................... 32
2.2.5 Phân tích các usecase ..................................................................... 34
2.2.6 Biểu đồ lớp ..................................................................................... 39
2.3 Thiết kế lớp ........................................................................................... 39
2.4 Cơ sở dữ liệu trên firebase .................................................................... 43
CHƯƠNG 3: CHƯƠNG TRÌNH THỬ NGHIỆM .................................... 44
3.1. Màn hình đăng nhập ............................................................................. 44
3.2. Màn hình Trang chủ ............................................................................. 45
3.3. Màn hình Hot ....................................................................................... 46
3.4. Màn hình Tin tức .................................................................................. 47
3.5. Màn hình Khám phá ............................................................................. 48
3.6. Hộp thoại chia sẻ .................................................................................. 49
3.7. Giao diện bình luận .............................................................................. 50
3.8. Màn hình tìm kiếm ............................................................................... 51
3.9. Màn hình danh mục lựachọn ................................................................ 52
3.10. Màn hình phát video chi tiết .............................................................. 53
KẾT LUẬN VÀ KIẾN NGHỊ ...................................................................... 54
DANH MỤC TÀI LIỆU THAM KHẢO
PHỤ LỤC
DANH MỤC TỪ VIẾT TẮT
Từ viết
Cụm từ đầy đủ
tắt
IDC
SDK
DEV
CDMA
GSM
International Data Group
Software Development
Kit
Nghĩa Tiếng Việt
Một tổ chức đầu tư mạo hiểm, quản lý sự
kiện, nghiên cứu và truyền thông kỹ thuật số
Một bộ công cụ phát triển phần mềm
Deverlop
Người lập trình
Code Division Multiple
Đa truy nhập (đa người dùng) phân chia theo
Access
mã
Global System for
Mobile Communication
Công nghệ dùng cho mạng thông tin di động
3G
Third Generation
Mạng di động
4G
For Generation
Mạng di động
E
EDGE
CSS
HTML
AJAX
DOM
SQL
OPEN
GL
JRE
Cascading Style Sheets
HyperText Markup
Language
Asynchronous JavaScript
and XML
Document Object Model
Structured Query
Language
Open Graphics Library
Java Virtual Machine
Công nghệ di động được nâng cấp từ GPRS
cho phép truyền dữ liệu
Các tập tin định kiểu theo tầng
Ngôn ngữ Đánh dấu Siêu văn bản
Nhóm các công nghệ phát triển web được sử
dụng để tạo các ứng dụng web động hay
các ứng dụng giàu tính Internet
Mô hình Đối tượng Tài liệu
Ngôn ngữ truy vấn
Tiêu chuẩn kỹ thuật đồ họa có mục đích định
ra một giao diện lập trình ứng dụng
Máy ảo
JVM
API
GPS
APK
CPU
XML
MVP
MVC
Java Runtime
Nó giúp việc thực thi JVM và môi trường cơ
Enviromement
bản
Application
Programming Interface
Global positioning
Giao diện lập trình ứng dụng
Hệ thống Định vị Toàn cầu
system
Android application
Bộ cài đặt ứng dụng trên hệ điều hành
package
Android
Central Processing Unit
Bộ xử lý trung tâm
eXtensible Markup
Language
Model View Presenter
Model - View Controller
Ngôn ngữ đánh dấu mở rộng
Mô hình lập trình
Mô hình lập trình
DANH MỤC CÁC BẢNG
Bảng 2.1: Mô tả usecase tìm kiếm video ..................................................................29
Bảng 2.2: Mô tả usecase xem video ..........................................................................29
Bảng 2.3: Mô tả usecase chia sẻ video......................................................................30
Bảng 2.4: Mô tả usecase bình luận video..................................................................30
Bảng 2.5: Mô tả usecase lưu video ...........................................................................31
Bảng 2.6: Mô tả usecase xóa video bên phía người dùng .........................................31
Bảng 2.7: Mô tả usecase lưu thông tin người dùng ..................................................32
Bảng 2.8: Mô tả usecase đăng tải video ....................................................................32
Bảng 2.9: Mô tả usecase sửa video ...........................................................................33
Bảng 2.10: Mô tả usecase xóa video bên phía người quản trị ..................................34
Bảng 2.11: Thiết kế lớp .............................................................................................39
DANH MỤC HÌNH
Hình 1.1 Mô hình tổng quát các thành phần trong Android .......................................4
Hình 1.2 Linux Kernel ................................................................................................5
Hình 1.3 Library and Runtime ....................................................................................6
Hình 1.4 Framework ...................................................................................................7
Hình 1.5 Activity life cycler......................................................................................11
Hình 1.6 Intent ..........................................................................................................12
Hình 1.7 Service life cycler .......................................................................................13
Hình 1.8 Service life cycler .......................................................................................17
Hình 1.9 Mô hình MVP ............................................................................................20
Hình 2.1 Biểu đổ usecase tổng quát ..........................................................................26
Hình 2.2 Biểu đồ usecase phân rã một số chức năng người dùng ............................27
Hình 2.3 Usecase phân rã một số chức năng người quản trị .....................................28
Hình 2.4. Biểu đồ cộng tác đăng nhập ......................................................................35
Hình 2.5 Sơ đồ cộng tác tìm kiếm video ...................................................................35
Hình 2.6 Biểu đồ cộng tác xem video .......................................................................36
Hình 2.7 Biểu đồ cộng tác chức năng chia sẻ video. ................................................36
Hình 2.8 Sơ đồ cộng tác chức năng bình luận video ................................................37
Hình 2.9 Sơ đồ cộng tác chức năng lưu video ..........................................................37
Hình 2.10 Biểu đồ cộng tác xóa video ......................................................................38
Hình 2.11 Biểu đồ lớp ...............................................................................................39
Hình 2.12 Cơ sở dữ liệu lưu tên người dùng ............................................................43
Hình 2.13 Cơ sở dữ liệu lưu ý kiến của người dùng .................................................43
Hình 3.1 Màn hình đăng nhập ...................................................................................44
Hình 3.2 Màn hình Trang chủ ...................................................................................45
Hình 3.3 Màn hình Hot .............................................................................................46
Hình 3.4 Màn hình Tin tức ........................................................................................47
Hình 3.5 Màn hình Khám phá ...................................................................................48
Hình 3.6 Hộp thoại chia sẻ ........................................................................................49
Hình 3.7 Giao diện bình luận ....................................................................................50
Hình 3.8 Màn hình tìm kiếm .....................................................................................51
Hình 3.9 Màn hình danh mục lựa chọn .....................................................................52
Hình 3.10 Màn hình phát chi tiết video ....................................................................53