xây dựng ứng dụng quản lý nhà trọ trên nền tảng android kết hợp web services - Pdf 33

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CẦN THƠ
KHOA CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG

LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC
NGÀNH CÔNG NGHỆ THÔNG TIN

ĐỀ TÀI

XÂY DỰNG ỨNG DỤNG QUẢN LÝ
NHÀ TRỌ TRÊN NỀN TẢNG ANDROID
KẾT HỢP WEB SERVICES

Sinh viên: Trần Minh Tuấn
Mã số: 1117889
Khóa K37

Cần Thơ, 05/2015


BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CẦN THƠ
KHOA CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG
BỘ MÔN TIN HỌC ỨNG DỤNG

LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC
NGÀNH CÔNG NGHỆ THÔNG TIN

Đề Tài

XÂY DỰNG ỨNG DỤNG QUẢN LÝ

Tôi xin chân thành cảm ơn.
Cần Thơ, ngày 05 tháng 05 năm 2015
Người thực hiện
Trần Minh Tuấn

i


MỤC LỤC
LỜI CẢM ƠN ............................................................................................................. i
MỤC LỤC .................................................................................................................. ii
DANH MỤC HÌNH .................................................................................................. iv
DANH MỤC BẢNG ................................................................................................ vii
TÓM TẮT ............................................................................................................... viii
ABSTRACT .............................................................................................................. ix
Chương 1. GIỚI THIỆU .............................................................................................1
1.1. ĐẶT VẤN ĐỀ.................................................................................................1
1.2. MỤC TIÊU ĐỀ TÀI........................................................................................1
1.3. PHẠM VI ĐỀ TÀI ..........................................................................................1
Chương 2. CƠ SỞ LÝ THUYẾT ................................................................................3
2.1. HỆ ĐIỀU HÀNH ANDROID [6,8] ................................................................3
2.1.1.

Tổng quan về hệ điều hành Android ..........................................................3

2.1.2.

Các phiên bản Android...............................................................................3

2.1.3.


Xây dựng dịch vụ Web.............................................................................18

2.3.3.

Giao tiếp giữa Android và Web Service dựa trên SOAP [1] ...................23

2.3.4.

Sử dụng dịch vụ Web trong Android .......................................................25

2.3.5.

Thư viện kSoap trong Android [1,3] ........................................................32

ii


Chương 3. PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG ............................................33
3.1. MÔ HÌNH ER ...............................................................................................33
3.2. TẬP THỰC THỂ ..........................................................................................34
3.3. MÔ HÌNH USE CASE..................................................................................37
3.4. KỊCH BẢN....................................................................................................40
Chương 4. KẾT QUẢ ĐẠT ĐƯỢC..........................................................................43
4.1. GIAO DIỆN WEB ........................................................................................43
4.2. GIAO DIỆN TRÊN ANDROID ...................................................................54
Chương 5. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ..............................................66
5.1. KẾT LUẬN ...................................................................................................66
5.1.1.


Hình 2.18 Web service gateway................................................................................24
Hình 2.19 Gửi yêu cầu và nhận kết quả từ dịch vụ Web sử dụng HttpTransport .....25
Hình 2.20 Phương thức hiển thị thông tin thành viên ...............................................26
Hình 2.21 Kết quả trả về của danhsachTV ...............................................................27
Hình 2.22 Hàm lấy dữ liệu từ dịch vụ Web ..............................................................28
Hình 2.23 Sử dụng đa tiến trình khi gửi yêu cầu ......................................................29
Hình 2.24 Tạo đa tiến trình với AsyncTask – gọi phương thức Web .......................29
Hình 2.25 Tạo đa tiến trình với AsyncTask – hiển thị dữ liệu từ dịch vụ Web ........30
Hình 2.26 Hiển thị dữ liệu từ kết quả trả về của dịch vụ Web .................................31
Hình 2.27 Sử dụng Log hiển thị chuỗi XML trả về từ dịch vụ Web ........................31
Hình 2.28 Mô hình class đợn giản của kSoap2 .........................................................32
Hình 3.1 Mô hình ER ................................................................................................33
Hình 3.2 Mô hình use case người quản trị ................................................................37
Hình 3.3 Mô hình use case chủ nhà trọ .....................................................................38
Hình 3.4 Mô hình use case người dùng ....................................................................39
Hình 4.1 Đăng ký tài khoản ......................................................................................43
Hình 4.2 Đăng ký tài khoản thành công....................................................................43
Hình 4.3 Thông tin nhà trọ ........................................................................................44
Hình 4.4 Tìm kiếm nhà trọ theo tên ..........................................................................44
Hình 4.5 Tìm kiếm nhà trọ theo địa chỉ ....................................................................45
Hình 4.6 Thông tin khuyến mãi ................................................................................45
Hình 4.7 Danh sách nhà trọ với tài khoản quản trị ...................................................46

iv


Hình 4.8 Xóa nhà trọ .................................................................................................46
Hình 4.9 Danh sách khuyến mãi với tài khoản quản trị ............................................47
Hình 4.10 Xóa khuyến mãi .......................................................................................47
Hình 4.11 Danh sách nhà trọ với tài khoản khách hàng ...........................................47

Hình 4.42 Thông tin khuyến mãi chi tiết ..................................................................60
Hình 4.43 Danh sách nhà trọ của chủ nhà trọ ...........................................................61
Hình 4.44 Lọc danh sách nhà trọ theo từ khóa .........................................................61
Hình 4.45 Thêm nhà trọ ............................................................................................62
Hình 4.46 Cập nhật thông tin nhà trọ ........................................................................62
Hình 4.47 Xác nhận yêu cầu xóa nhà trọ ..................................................................63
Hình 4.48 Kết quả xóa một dòng dữ liệu trong danh sách nhà trọ ...........................63

v


Hình 4.49 Thông tin chi tiết của một nhà trọ ............................................................63
Hình 4.50 Quản lý đặt phòng ....................................................................................64
Hình 4.51 Thông tin khuyến mãi ..............................................................................64
Hình 4.52 Cập nhật thông tin tài khoản ....................................................................65

vi


DANH MỤC BẢNG
Bảng 2.1 Các phiên bản của hệ điều hành Android ....................................................4
Bảng 3.1 Mô tả tập thực thể thành viên ....................................................................34
Bảng 3.2 Mô tả tập thực thể nhà trọ ..........................................................................34
Bảng 3.3 Mô tả tập thực thể phòng trọ......................................................................35
Bảng 3.4 Mô tả tập thực thể khuyến mãi ..................................................................35
Bảng 3.5 Mô tả tập thực thể loại phòng ....................................................................35
Bảng 3.6 Mô tả tập thực thể đặt phòng .....................................................................36
Bảng 3.7 Kịch bản đăng nhập ...................................................................................40
Bảng 3.8 Kịch bản tra cứu nhà trọ ............................................................................41
Bảng 3.9 Quản lý đặt phòng ......................................................................................41

Từ khóa: quản lý nhà trọ, google maps api, android, webservices, json

viii


ABSTRACT
At the present time, accommodation is a problem that many people interested
in, especially for those who live and work outside the home for example students,
workers, staffs,… furthermore, they can find a room which is suit their own economy,
comfortable condition for daily living and reduce transportation cost, it is very
difficulty. That parallel, for landlord, it is also the problem that they are very
concerned for how to let everyone can rent their room with information such as
location, price, convenience,…
The motel management system is designed to supply for that demanding. The
application not only solve the problem of landlords, but also meet the need of pupils,
students and others,...
For landlords, they can add and update the inn, promotions, room rates,
showing the rooms available for people to know, solve the registration requirements
of the customer reservation.
For customers, they can view the information of the inn also availability,
promotion are, find the hostel by name or address, hostel location on the map, their
way from the current position at her to a motel, require registration and reservation
cancellation if the inn feel that is inconsistent with the request itself.
For registered members, they can search for hostel, inn information and
promotion, if the match can register and submit a request to register a reservation, use
the other function of customer. Besides, the application administrator can view all
information inn, promotion, and remove members if information is incorrect or does
not exist.
Key words: motel management system, google maps api, android,
webservices, json

Lưu trữ dữ liệu trên mạng giúp mọi người có thể sử dụng mọi lúc, mọi nơi và
chia sẻ thông tin nhà trọ thông qua ứng dụng.
Tạo trang web đơn giản giúp người dùng cập nhật, tra cứu thông tin nhà trọ,
khuyến mãi, giúp khách hàng có thể đăng ký đặt phòng, thuê phòng.
1.3. PHẠM VI ĐỀ TÀI
Tập trung chủ yếu xây dựng ứng dụng trên nền tảng Android giúp người dùng có thể
tra cứu thông tin chung, tìm nhà trọ trên bản đồ, tìm đường và đăng nhập với quyền
hạn khác nhau: người quản trị, chủ nhà trọ, khách hàng, người chưa đăng nhập sẽ
thực hiện những chức năng khác nhau. Cụ thể:
1


 Người quản trị: xem tất cả thông tin nhà trọ, thành viên, khuyến mãi và xóa những
thông tin chia sẻ không chính xác.
 Chủ nhà trọ: thêm, xóa, cập nhật thông tin nhà trọ, phòng trọ, khuyến mãi, xác
nhận yêu cầu đặt phòng của khách hàng và xóa thuê phòng.
 Khách hàng: tra cứu thông tin nhà trọ, khuyến mãi, gửi đăng ký đặt phòng, hủy
yêu cầu đặt phòng của bản thân.
 Người chưa đăng nhập: tra cứu thông tin nhà trọ, khuyến mãi, đăng ký thành viên.

2


Chương 2. CƠ SỞ LÝ THUYẾT
2.1. HỆ ĐIỀU HÀNH ANDROID [6,8]
2.1.1. Tổng quan về hệ điều hành Android
Android là một hệ điều hành dựa trên nền tảng Linux được thiết kế dành cho
các thiết bị di động có màn hình cảm ứng như điện thoại thông minh và máy tính
bảng. Ban đầu, Android được phát triển bởi Tổng công ty Android, với sự hỗ trợ tài
chính từ Google và sau này được chính Google mua lại vào năm 2005. Android ra

3


trong một thực đơn tráng miệng hảo hạng: Donut, Eclair, và Jelly Bean. Khi mọi
người ám chỉ Jelly Bean có nghĩa là phiên bản Android 4.2. Phiên bản Android cũng
được mô tả ở cấp độ API, bởi số nguyên tăng dần theo trình tự. Vì vậy, Android API
ở mức 17 đề cập đến Android phiên bản 4.2, còn được gọi là Jelly Bean.
Bảng 2.1 Các phiên bản của hệ điều hành Android
Phiên bản

Tên mã

Ngày phát hành

API

Phân bố

5.0

Lollipop

07/2014

20

Dành cho người
phát hành

4.4


Jelly Bean

09/07/2012

16

25,2%

4.0.x

IceCream
Sandwich

16/12/2011

15

11,4%

3.2

Honeycomb

15/07/2011

13

0%


2.2

Froyo

20/05/2010

8

0,7%

2.0–2.1

Eclair

26/10/2009

7

0%

1.6

Donut

15/09/2009

4

0%


5


- Một ứng dụng Android gồm có một hoặc nhiều phân loại sau đây:
 Hoạt động (Activities)
Một ứng dụng có một giao diện người dùng nhìn thấy được, sẽ được thực
hiện bằng một hoạt động. Khi người sử dụng chọn một ứng dụng từ màn hình
chủ hoặc trình khởi chạy ứng dụng, một hoạt động được khởi động.
 Dịch vụ (Services)
Một dịch vụ nên được sử dụng đối với bất kỳ ứng dụng nào cần tồn tại trong
một thời gian dài, chẳng hạn như một trình giám sát mạng hoặc ứng dụng kiểm
tra cập nhật.
 Trình cung cấp nội dung (Content providers)
Bạn có thể coi các trình cung cấp nội dung như là một máy chủ cơ sở dữ
liệu. Công việc của một trình cung cấp nội dung là quản lý truy cập vào dữ liệu
đang tồn tại, chẳng hạn như một cơ sở dữ liệu SQLite. Nếu ứng dụng của bạn
rất đơn giản thì bạn không nhất thiết phải tạo ra một trình cung cấp nội dung.
Nếu bạn đang xây dựng một ứng dụng lớn hơn, hoặc một ứng dụng để cung cấp
dữ liệu sẵn sàng cho nhiều hoạt động hoặc ứng dụng khác, một trình cung cấp
nội dung là phương tiện truy cập dữ liệu của bạn.
 Trình thu sóng phát (Broadcast receivers)
Một ứng dụng Android có thể được khởi chạy để xử lý một phần tử dữ liệu
hoặc đáp ứng một sự kiện, chẳng hạn như nhận một văn bản thông báo.
2.1.5. Bộ công cụ phát triển phần mềm (SDK)
Cách dễ nhất để bắt đầu phát triển các ứng dụng Android là tải về Bộ công cụ
phát triển phần mềm Android và Môi trường phát triển tích hợp Eclipse (Eclipse IDE).
Việc phát triển Android có thể diễn ra trên Microsoft® Windows®, Mac OS X, hoặc
Linux.
Bộ công cụ phát triển phần mềm Android được phân phối dưới dạng một tệp
tin nén zip. Bộ công cụ phát triển phần mềm (SDK) gồm có:

̶
̶
̶

Draw on the map: tùy chỉnh thêm hình vẽ, ký kiệu trên bản đồ.
Location Services: xác định vị trí trên bản đồ bằng cách sử dụng các công nghệ
định vị.
3D Rendering: xem bản đồ với nhiều điểm quan sát có độ nghiêng và gốc xoay
khác nhau.

2.2.2. Dịch vụ của Google Map API
2.2.2.1. Google Map Web Services
Google Map Web Services là một tập hợp các giao diện HTTP cung cấp thông
tin về vi trí địa lý.Sử dụng các yêu cầu URL để truy cập mã hóa địa lý, phương hướng,
độ cao, vị trí và thông tin múi giờ và đảm bảo rằng Google có thể liên lạc được khi
cần thiết.
- Directions API
 Directions API là một dịch vụ cho phép tìm đường đi, tính khoảng cách, thời
gian giữa hai điểm trên bản đồ bằng cách gửi yêu cầu HTTP (HTTP request).
Có thể tìm kiếm đường đi theo phương thức: vận chuyển (transit), lái xe
(driving), đi bộ (walking) hoặc xe đạp (cycling).
 Gửi một yêu cầu tìm đường đi trên bản đồ, sử dụng cú pháp sau:
/>Trong đó:
- Output là dạng kết quả trả về, có thể là json hoặc xml.
Truy cập địa chỉ tìm đường đi thông qua HTTP, sử dụng như sau:
/>
7


-

điểm đến, trong đó thành phần cần quan tâm nhất là points nằm trong
json polyline, nó là chuỗi đã được mã hóa từ một danh sách các điểm cần
đi qua của một đoạn đường, khi sử dụng cần phải giải mã chuỗi thành
danh sách các điểm.
Ví dụ: tìm đường đi từ Đại học Cần Thơ đến Đại học Tây Đô.
Cú pháp:
hoc can
tho &destination=dai hoc tay do

8


-

Kết quả:

Hình 2.3 Sử dụng Direction API

9


- Distance Matrix API
 Distance Matrix API la một dịch vụ cung cấp khoảng cách và thời gian đi lại
bằng ma trận các điểm bắt đầu và kết thúc. Thông tin trả về dựa trên các tuyến
đề nghị giữa điểm bắt đầu và kết thúc, dịch vụ không trả về thông tin lộ trình
chi tiết.
 Gửi yêu cầu lên server
/>-

Trong đó: output có thể là json hoặc xml.


10


Hình 2.4 Sử dụng Distance Matrix API

11


- Elevation API
 Elevation API cung cấp giao diện đơn giản để truy vấn các địa điểm theo độ
cao, cung cấp dữ liệu về độ cao cho tất cả các điểm trên bề mặt Trái đất và sâu
dưới đáy đại dương. Sử dụng JacaScript V3 cũng có thể sử dụng API này thông
qua đối tượng ElevationService.
 Gửi yêu cầu tìm địa điểm theo độ cao, trong tham số gửi đi cần phải có tọa độ
điểm cần xác định độ cao
/> Ví dụ: xác định độ cao tại trường Đại học Cần Thơ
- Cú pháp:
/>8,105.769518
-

Kết quả:

Sử dụng Elevation API
- Geocoding API
 Geocoding API là dịch vụ chuyển đổi địa chỉ dạng văn bản sang dạng số để có
thể thêm địa điểm lên bản đồ hoặc định vị địa điểm.
 Có thể gửi yêu cầu chuyển đổi tọa độ bằng http hoặc https.
 Cú pháp:
/> Ví dụ: tìm tọa độ điểm có địa chỉ là đường 3/2, quận Ninh Kiều, TP Cần Thơ.

Địa chỉ có thể đọc hiểu. Nếu một nơi địa chỉ có thể đọc được, có nhiều khả
năng sẽ được đưa vào cơ sở dữ liệu của Google.
Các vị trí đặc trưng của địa điểm.

2.2.2.3. JavaScript V3
Thiết kế này dành cho những người đã quen thuộc với JavaScript và lập trình
hướng đối tượng. Nhúng bản đồ Google vào trang web bằng cách sử dụng JacaScript.
Tất cả các ứng dụng sử dụng Google Maps API cần phải có một API key. Sử
dụng API key giúp việc giám sát ứng dụng cũng như đảm bảo rằng Google có thể
liên lạc khi cần thiết.
2.2.2.4. Các dịch vụ khác của Google Maps
- Place Searches
 Nearby Search Requests
- Tìm kiếm các địa điểm xung quanh một tọa độ.
- Gửi yêu cầu lên server:
/>Trong đó: output là dạng kết quả về (json hay xml).
-

Parameters phải có ít nhất 4 từ khóa chủ yếu sau
key: api key đăng ký sử dụng dịch vụ Google Places API.
location: tọa độ tìm kiếm xung quanh một vị trí xác định.
radius: phạm vi bán kính tìm kiếm, tối đa là 50 km.
types: loại địa điểm tìm kiếm.

Ví dụ: tìm các ngân hàng xung quanh trường Đại học Cần Thơ trong phạm vi bán
kính 500m.

14



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