Xây dựng ứng dụng ôn luyện thi toeic và theo dõi tiến độ học tập của sinh viên trên nên android - Pdf 40

ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
-------------------------------------------

NGUYỄN THỊ THÊU

XÂY DỰNG ỨNG DỤNG ÔN LUYỆN THI TOEIC VÀ
THEO DÕI TIẾN ĐỘ HỌC TẬP CỦA SINH VIÊN
TRÊN NỀN TẢNG ANDROID

ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC
CHUYÊN NGÀNH MẠNG MÁY TÍNH VÀ TRUYỀN THÔNG

1


THÁI NGUYÊN, NĂM 2016
ĐẠI HỌC THÁI NGUYÊN

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
-------------------------------------------

ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC
CHUYÊN NGÀNH MẠNG MÁY TÍNH VÀ TRUYỀN THÔNG

Đề tài:
2


XÂY DỰNG ỨNG DỤNG ÔN LUYỆN THI TOEIC VÀ THEO DÕI
TIẾN ĐỘ HỌC TẬP CỦA SINH VIÊN


Chân thành cảm ơn các bạn sinh viên lớp MMT&TT–K10A, cùng các bạn
sinh viên cùng khóa đã nhiệt tình giúp đỡ động viên em.

Thái Nguyên, ngày … tháng…. năm 2016.
Sinh viên

Nguyễn Thị Thêu

4


LỜI CAM ĐOAN

Em xin cam đoan nội dung của đề tài hoàn toàn là do em nghiên cứu, tìm
hiểu và tổng hợp từ các tài liệu liên quan, cũng như các kiến thức từ thực tế khi em
học tập, rèn luyện trên ghế giảng đường, không sao chép hoàn toàn nội dung của
các đề tài khác.

Thái Nguyên, ngày tháng

năm 2016

Sinh viên

Nguyễn Thị Thêu

5




7

1.2 Web Service trong Android 13
1.3. Ứng dụng mô hình UML trong thiết kế ứng dụng Android
1.3.1 Các biểu đồ

16

1.3.2 UML trong thiết kế ứng dụng Android18
CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 22
2.1 Khảo sát hệ thống

22

2.1.1 Khảo sát tình hình thực tế

22

2.1.2 Cấu trúc đề thi Toeic trong thực tế
2.2 Yêu cầu công nghệ của hệ thống
2.2.1 Chức năng của Server

25

2.2.2 Chức năng của Client

25

24


41

CHƯƠNG 3: XÂY DỰNG ỨNG DỤNG LUYỆN THI TOEIC TRÊN ANDROID
42
3.1 Xây dựng Web Server

42

3.1.1 Tạo lớp kết nối tới SQL Server 42
3.1.2 Xây dựng Web Service 42
3.1.3 Xây dựng Web Client

43

3.2 Xây dựng ứng dụng Client trên Android

44

3.2.1 Tạo lớp kết nối và truyền dữ liệu với Server 44
3.2.2 Xây dựng ứng dụng Android
3.3 Ứng dụng trên Android (Client)

44
44

3.3.1 Danh sách các màn hình 44
3.3.2 Trang login

45


KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 68
TÀI LIỆU THAM KHẢO 69

8


DANH MỤC HÌNH ẢNH
Hình 1.1: Cấu trúc stack hệ thống Android 4
Hình 1.2: Vòng đời của một activity9
Hình 1.3: Truyền dữ liệu dùng intent

9

Hình 1.4: Các phương thức gọi lại của một Services

11

Hình 2.1: Kiến trúc hệ thống 26
Hình 2.2: Các thành phần của hệ thống

29

Hình 2.3: Biểu đồ UC quản trị trên Server 32
Hình 2.4: Biểu đồ UC người dùng trên Client

33

Hình 2.5: Biểu đồ tuần tự cho chức năng Login trên Server
Hình 2.6: Biểu đồ tuần tự chức năng Manage Group


Hình 3.6: Biểu đồ theo dõi tình hình học tập
Hình 3.7: Màn hình ôn thi Toeic

50

Hình 3.8: Giao diện hiển thị Part 1 51
Hình 3.9: Giao diện hiển thị Part 2 52
Hình 3.10: Giao diện hiển thị Part 3 53
9

50

39


Hình 3.11: Giao diện hiển thị part 4 54
Hình 3.12: Màn hình hiển thị Part 5 55
Hình 3.13: Màn hình hiển thị Part 6 56
Hình 3.14: Màn hình hiển thị List câu hỏi 57
Hình 3.15: Giao diện Test Toeic

58

Hình 3.16: Hình ảnh Web Server cài đặt thành công
Hình 3.17: Form nhập dữ liệu mà Server tự tạo

60

Hình 3.18: Giao diện màn hình đăng nhập ở Server


59

61


LỜI NÓI ĐẦU
Công nghệ thông tin ngày càng phát triển và thế kỷ 21 được coi là thế kỷ của
công nghệ. Vì thế việc ứng dụng công nghệ thông tin vào thực tiễn là điều tất yếu
và là xu thế của thời đại. Ở nước ta trong những năm trở lại đây thì việc sử dụng
công nghệ thông tin không còn xa lạ và ngày càng được ứng dụng rộng rãi trong
nhiều lĩnh vực của đời sống xã hội và giáo dục.
Cùng với công nghệ thông tin thì ngoại ngữ cũng có vai trò rất quan trọng
trong xu thế hội nhập phát triển hiện nay. Ngoại ngữ giúp con người có thể hiểu
biết sâu sắc hơn nữa về nền văn minh thế giới, mở rộng quan hệ hợp tác, giao lưu
và phát triển tiềm năng của chính mình. Biết ngoại ngữ là yêu cầu tất yếu của lao
động có kỹ thuật cao nhằm đáp ứng các quy trình công nghệ thường xuyên được
đổi mới, và là một năng lực cần thiết đối với người dân Việt Nam nhất là các bạn
học sinh, sinh viên. Nhận thấy được tầm quan trọng đó thì việc áp dụng công nghệ
thông tin vào trong việc học ngoại ngữ như là một điều tất yếu nhằm nâng cao hiệu
quả và chất lượng của việc học ngoại ngữ. Từ đó nhiều phần mềm học ngoại ngữ
đã ra đời trên nhiều nền tảng và thiết bị di động giúp ích rất nhiều cho những
người có nhu cầu học ngoại ngữ.
Hiện nay nhiều trường đại học yêu cầu sinh viên phải đạt đầu ra tiếng anh
Toeic để có thể tốt nghiệp. Nhiều sinh viên cần phải học tiếng anh để có thể thi
đầu ra Toeic. Thường các sinh viên sẽ tìm đến các trung tâm luyện thi Toeic để
học. Tuy nhiên sẽ nảy sinh một số vấn đề:
 Một số sinh viên không có đủ tiền để học ở trung tâm.
 Một số sinh viên không có thời gian để đi học ở trung tâm.


Trong lịch sử phát triển, ban đầu Android thuộc sở hữu của công ty Android
Inc. Sau đó được Google mua lại vào năm 2005 và bắt đầu xây dựng Android
Platform. Cuối năm 2007 liên minh Open HandsetAlliance được thành lập và được
công bố, Android chính thức trở thành mã nguồn mở. Phiên bản đầu tiên được phát
hành vào tháng 11 năm 2007.
1.1.2 Máy ảo Dalvik trong Android
Dalvik là máy ảo giúp các ứng dụng java chạy được trên các thiết bị động
Android. Nó chạy các ứng dụng đã được chuyển đổi thành một file thực thi Dalvik
(dex). Định dạng phù hợp cho các hệ thống mà thường bị hạn chế về bộ nhớ và tốc
độ xử lý. Dalvik đã được thiết kế và viết bởi Dan Bornstein, người đã đặt tên cho
nó sau khi đến thăm một ngôi làng đánh cá nhỏ có tên là Dalvik.
Từ góc nhìn của một nhà phát triển, Dalvik trông giống như máy ảo Java
13


(Java Virtual Machine) nhưng thực tế thì hoàn toàn khác. Khi nhà phát triển viết
một ứng dụng dành cho Android, anh ta thực hiện các đoạn mã trong môi trường
Java. Sau đó, nó sẽ được biên dịch sang các bytecode của Java, tuy nhiên để thực
thi được ứng dụng này trên Android thì nhà phát triển phải thực thi một công cụ có
tên là dx. Đây là công cụ dùng để chuyển đổi bytecode sang một dạng gọi là dex
bytecode. "Dex" là từ viết tắt của "Dalvik executable" đóng vai trò như cơ chế ảo
thực thi các ứng dụng Android.
1.1.3 Kiến trúc của Android

Hình 1.1: Cấu trúc stack hệ thống Android
14


a, Tầng ứng dụng
Đây là lớp ứng dụng giao tiếp với người dùng, bao gồm các ứng dụng như:

cung cấp các công cụ điều khiển Activity.
 Telephony Manager: Cung cấp công cụ để thực hiện việc liên lạc như gọi
điện thoại.
 XMPP Service: Cung cấp công cụ để liên lạc trong thời gian thực.
 Location Manager: Cho phép xác định vị trí của điện thoại dựa vào hệ
thống định vị toàn cầu GPS và Google Maps.
 Window Manager: Quản lý việc xây dựng và hiển thị các giao diện người
dùng cũng như tổ chức quản lý các giao diện giữa các ứng dụng.
 Notication Manager: Quản lý việc hiển thị các thông báo ( như báo có tin
nhắn,có email mới….).
c, Library
Android bao gồm một tập hợp các thư viện C/C++ được sử dụng bởi nhiều
thành phần khác nhau trong hệ thống Android. Điều này được thể hiện thông qua
nền tảng ứng dụng Android. Một số các thư viện cơ bản gồm:
 Hệ thống thư viện C : triển khai BSD-derived có nguồn gốc từ các hệ
thống thư viện chuẩn C (libc), được sử dụng chỉ bởi hệ điều hành.
 Media Libraries – Dựa trên gói Video OpenCORE; các thư viện hỗ trợ
phát và ghi âm của các định dạng âm thanh và video phổ biến, cũng như
các file hình ảnh tĩnh, bao gồm MPEG4, H.264, MP3, AAC, AMR, JPG,
and PNG

16


 Surface Manager – Quản lý việc truy xuất vào hệ thống hiển thị
 LibWebCore - Đây là thành phần để xem nội dung trên Web, được sử
dụng để xây dựng phần mềm duyệt Web (Android Browse) cũng như để
các ứng dụng khác có thể nhúng vào. Nó cực kỳ mạnh, hỗ trợ được
nhiều công nghệ mạnh mẽ như HTML5, JavaScript, CSS, DOM,
AJAX..

 USB driver : Quản lý hoạt động của các cổng giao tiếp USB
 Keypad driver : Điều khiển bàn phím
 Wifi Driver : Chịu trách nhiệm về việc thu phát sóng wifi
 Audio Driver : điều khiển các bộ thu phát âm thanh, giải mã các tính hiệu
dạng audio thành tín hiệu số và ngược lại
 Binder IPC Driver : Chịu trách nhiệm về việc kết nối và liên lạc với mạng
vô tuyến như CDMA, GSM, 3G, 4G, E để đảm bảo những chức năng
truyền thông được thực hiện.
 M-System Driver : Quản lý việc đọc ghi... lên các thiết bị nhớ như thẻ SD,
flash
 Power Madagement : Giám sát việc tiêu thụ điện năng.
1.1.4 Các thành phần cơ bản của ứng dụng Android
a, Activity
Activity chính là một cửa sổ chứa giao diện ứng dụng của bạn mà người dùng
có thể tương tác với nó. Mỗi màn hình trên ứng dụng cả bạn sẽ là kế thừa của
Activity. Activity dùng các View để hiển thị giao diện ứng dụng người dùng và

18


đáp ứng lại các yêu cầu từ người dùng. Có 3 dạng Activity:
 Floating Activity: là dạng Activity nổi, có kích thước không phủ lấ toàn
bộ màn hình.
 Activity Group: là một nhóm các Activity nhúng trong một Activity khác.
 Full screen Activity: là Activity phủ kín toàn bộ màn hình. Đây là loại
Activity thường được sử dụng phổ biến nhất.
Vòng đời của một Activity sẽ diễn ra từ lúc khởi động cho đến khi kết thúc
vòng đời của nó. Hệ thống Android sẽ được bắt đầu thực hiện một Activity tương
ứng với từng trạng thái vòng đời của nó. Android cung cấp một số sự kiện để quản
lý các trạng thái vòng đời của Activity như sau:


Hình 1.3: Truyền dữ liệu dùng intent
c, Services
Các dịch vụ (Services) là thành phần chạy nền và không có bất kỳ giao diện
nào. Chúng có thể thực hiện các hành động tương tự như các hoạt động, nhưng mà
không có bất kỳ giao diện người dùng nào. Dịch vụ là hữu ích với các hành động
(actions) khi mà người dùng cùng một lúc muốn thực hiện trên màn hình nhiều
actions. Services có thể được sử dụng theo 2 cách:
+ Services có thể được bắt đầu và được phép hoạt động cho đến khi một
người nào đó dừng Services lại hoặc Services tự ngắt. Ở chế độ này, Services được
bắt

đầu

bằng

cách

gọi

Context.startService()



dừng

bằng

lệnh


Hệ thống Android sử dụng cơ chế này vào mọi lúc. Chẳng hạn như Content
Providers ở đây trình bày tất cả các dữ liệu liên hệ của người dùng một cách đa
22


dạng trên ứng dụng. Settings Provider trình bày việc cài đặt các ứng dụng khác
nhau trên hệ thống, bao gồm cả việc xây dựng ứng dụng Settings. Media Store
chịu trách nhiệm lưu trữ và chia sẻ các phương tiện khác nhau, chẳng hạn như ảnh
và âm nhạc trên các ứng dụng khác nhau.
Content Providers là các giao diện tương đối đơn giản với các phương thức
tiêu chuẩn như insert(), update(), delete(), and query(). Các phương thức này giống
như các phương thức chuẩn trong cơ sở dữ liệu.

23


e, Broadcast Receivers
Broadcast Receivers (có thể gọi là Receiver) là một trong bốn loại thành phần
trong ứng dụng Android. Chức năng dùng để nhận các sự kiện mà các ứng dụng
hoặc hệ thống phát đi.
Có 2 cách phát-nhận đó là:
+ Không có thử tự: receiver nào đủ điều kiện thì nhận hết, không phân biệt và
cũng tách rời nhau.
+ Có thứ tự: receiver nào đăng ký ưu tiên hơn thì nhận trước và có thể truyền
thêm thông tin xử lý cho các receiver như sau.
Chu kì sống của Broadcast Receiver: thực ra chu kỳ sống của Broadcast
Receiver chỉ có duy nhất một phương thức onReceive():
+ Khi có sự kiện mà Broadcast Receiver đã đăng ký nhận được phát đi, thì
phương thức onReceive() của Broadcast Receiver đó sẽ được gọi.
+ Sau khi thực thi xong phuowmg thức này, lifecycle của Receiver kết thúc.


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status