Một nền tảng được sử dụng trong các thiết bị đó là hệ điều hành thông minh Android của Google.. Trong khi việc phát triển nền tảng di động hiện nay chủ yếu xây dựng trên các hệ điều hành
Trang 1MỤC LỤC
MỞ ĐẦU 1
1 Lý do chọn đề tài 1
2 Mục tiêu và nhiệm vụ 1
3 Đối tượng nghiên cứu và phạm vi hệ thống 2
4 Phương pháp nghiên cứu 2
5 Ý nghĩa thực tiễn của ứng dụng 2 Chương 1 CƠ SỞ LÝ THUYẾT Error! Bookmark not defined 1.1 NỀN TẢNG DI ĐỘNG Error! Bookmark not defined 1.1.1 Giới thiệu về các nền tảng di động Error! Bookmark not defined 1.1.1.1 Android Error! Bookmark not defined 1.1.1.2 IOS Error! Bookmark not defined 1.1.1.3 Windows Phone Error! Bookmark not defined 1.1.1.4 Symbian Error! Bookmark not defined 1.1.1.5 BlackBerry Error! Bookmark not defined 1.1.2 Hệ điều hành Android Error! Bookmark not defined 1.1.2.1 Giới thiệu Error! Bookmark not defined 1.1.2.2 Kiến trúc Error! Bookmark not defined 1.1.2.3 Các thành phần cơ bản của ứng dụng Android Error! Bookmark not defined
1.1.3 Máy ảo Dalvik và Android SDK Error! Bookmark not defined 1.1.3.1 Giới thiệu Error! Bookmark not defined 1.1.3.2 Android SDK Error! Bookmark not defined 1.1.3.3 Android Emulator Error! Bookmark not defined 1.1.3.4 Virtual Box và Genymotion Error! Bookmark not defined 1.2 Ngôn ngữ lập trình Java Error! Bookmark not defined 1.2.1 Giới thiệu Error! Bookmark not defined 1.2.2 Một số tính chất ngôn ngữ Java Error! Bookmark not defined 1.3 Các thành phần giao diện trong Android Error! Bookmark not defined 1.3.1 View Error! Bookmark not defined 1.3.2 ViewGroup Error! Bookmark not defined 1.3.3 Button Error! Bookmark not defined 1.3.4 ListView Error! Bookmark not defined 1.3.5 EditText Error! Bookmark not defined
Trang 21.3.6 TextView Error! Bookmark not defined 1.3.7 CheckBox Error! Bookmark not defined 1.3.8 Menu Option Error! Bookmark not defined 1.3.9 ContextMenu Error! Bookmark not defined 1.4 Giới thiệu về Intent Error! Bookmark not defined 1.4.1 Khái niệm Intent Error! Bookmark not defined 1.4.2 Dữ liệu của Intent Error! Bookmark not defined 1.4.3 Các Action được định nghĩa Error! Bookmark not defined 1.5 WEBSERVICE Error! Bookmark not defined 1.6 Giới thiệu về Json Error! Bookmark not defined 1.6.1 Khái niệm về Json Error! Bookmark not defined 1.6.2 Sử dụng Json Error! Bookmark not defined 1.6.2.1 Dùng JSON để mô tả đối tượng với 2 thuộc tính name, email Error! Bookmark not defined
1.6.2.2 Dùng JSON để mô tả một mảng các đối tượng Error! Bookmark not defined
1.6.3 Các kiểu dữ liệu của JSON Error! Bookmark not defined Chương 2 PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG Error! Bookmark not
defined
2.1 PHÂN TÍCH YÊU CẦU Error! Bookmark not defined 2.1.1 Đặc tả bài toán Error! Bookmark not defined 2.1.2 Chức năng chính của chương trình Error! Bookmark not defined 2.2 CÁC BIỂU ĐỒ HỆ THỐNG Error! Bookmark not defined 2.2.1 Biểu đồ ca sử dụng Error! Bookmark not defined 2.2.2 Biểu đồ hoạt động Error! Bookmark not defined 2.2.3 Biểu đồ tuần tự Error! Bookmark not defined 2.3.1 Biểu đồ triển khai Error! Bookmark not defined 2.3.2 Bảng dữ liệu thành phố Error! Bookmark not defined 2.3.3 Bảng dữ liệu khách sạn Error! Bookmark not defined
Chương 3 TRIỂN KHAI VÀ ĐÁNH GIÁ KẾT QUẢ 3
3.1 HƯỚNG DẪN CÀI ĐẶT 3
3.1.1 Môi trường triển khai 3
3.1.2 Cài đặt ứng dụng 3
3.2 MINH HỌA CHẠY CHƯƠNG TRÌNH 3
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 9
Trang 3TÀI LIỆU THAM KHẢO……… 48
Trang 4MỤC LỤC HÌNH ẢNH
Hình 1: Các phiên bản Android Error! Bookmark not defined Hình 2: Kiến trúc Android Error! Bookmark not defined Hình 3: Mô hình hoạt động của Activity Error! Bookmark not defined Hình 4: Môi trường phát triển ứng dụng Android trong Eclipse Error! Bookmark not defined.
Hình 5: Môi trường phát triển ứng dụng Android trong Eclipse Error! Bookmark not defined.
Hình 6: VirtualBox Error! Bookmark not defined Hình 7: Mô hình hoạt động của Activity Error! Bookmark not defined Hình 8: Các thành phần của View Error! Bookmark not defined Hình 9: Button trong Android Error! Bookmark not defined Hình 10: EditText trên Android Error! Bookmark not defined Hình 11: CheckBox trên Android Error! Bookmark not defined Hình 12: Menu Option trên Android Error! Bookmark not defined Hình 13: ContextMenu trên Android Error! Bookmark not defined Hình 14: Truyền dữ liệu giữa 2 Acticity Error! Bookmark not defined Hình 5: Chồng giao thức của dịch vụ eb Error! Bookmark not defined Hình 6: Mô hình hoạt động của eb service Error! Bookmark not defined.
Hình 17: Biểu đồ ca sử dụng tổng quát 31
Hình 18: Biểu đồ ca quản lý thông tin khách sạn 31
Hình 19: Biểu đồ ca quản lý thành phố 32
Hình 20: Biểu đồ ca thành phố 33
Hình 21: Biểu đồ ca khách sạn 34
Hình 22: Biểu đồ ca bản đồ 35
Hình 23: Biểu đồ hoạt động chọn thành phố 36
Hình 24: Biểu đồ hoạt động khách sạn 36
Hình 25: Biểu đồ hoạt động bản đồ 36
Hình 26: Biểu đồ tuần tự chọn thành phố 37
Hình 27: Biểu đồ tuần tự khách sạn 38
Hình 28: Biểu đồ triển khai 39
Hình 29: Giao diện Menu ứng dụng 3
Hình 30: Giao diện chọn thành phố 4
Hình 31: Giao diện khách sạn 5
Hình 32: Giao diện thông tin chi tiết khách sạn 6
Hình 33: Giao diện để bật GPS 7
Hình 34: Giao diện chỉ đường đi đến khách sạn 8
Trang 6DANH MỤC BẢNG BIỂU Bảng 1: Thuộc tính Intent Error! Bookmark not defined Bảng 2: Các Action định nghĩa Error! Bookmark not defined.
Bảng 3: Mô tả các usecase trong biểu đồ ca quản lý thông tin khách sạn 31
Bảng 4: Mô tả các usecase trong biểu đồ quản lý thành phố 32
Bảng 5: Mô tả các usecase trong biểu đồ ca thành phố 33
Bảng 6: Mô tả các usecase trong biểu đồ ca khách sạn 34
Bảng 7: Mô tả các usecase trong biểu đồ ca bản đồ 35
Trang 7Xây dựng hệ thống tra cứu khách sạn trên hệ điều hành Android
MỞ ĐẦU
1 Lý do chọn đề tài
Ngày nay các thiết bị số cầm tay như điện thoại di động, điện thoại thông minh, máy tính bảng có rất nhiều trên thị trường Với giá thành ngày càng rẻ và các lợi ích đem lại, các thiết bị đó ngày càng được sử dụng nhiều và phổ biến Một nền tảng được sử dụng trong các thiết bị đó là hệ điều hành thông minh Android của Google Do vậy đi cùng việc phát triển và sử dụng các thiết bị phần cứng một cách hiệu quả thì việc phát triển các ứng dụng phần mềm chạy trên nền Android càng lúc càng tăng cao
Các thiết bị di động ngày càng mạnh mẽ với khả năng xử lí các tác vụ mà chúng ta khó có thể tưởng tượng trước đây vài năm Những chiếc điện thoại thời trang và tiện dụng với những tính năng về phần cứng như GPS, gia tốc kế và màn hình cảm ứng là một nền tảng hấp dẫn cho các ứng dụng di động đột phá Trong khi việc phát triển nền tảng di động hiện nay chủ yếu xây dựng trên các hệ điều hành độc quyền, hạn chế các ứng dụng của bên thứ ba, sự ra đời của Android đã mang lại một giải pháp mở Không bị hạn chế, các lập trình viên Android tự do viết các ứng dụng tận dụng tối đa sự phát triển mạnh mẽ của phần cứng cho điện thoại di động Android nhanh chóng trở thành hệ điều hành thu hút nhiều lập trình viên và chiếm một thị phần lớn trong thị trường di động
Nhằm phục vụ cho đa số những người muốn tìm kiếm khách sạn một cách nhanh chóng và thuận tiện, tôi đã đưa ra ý tưởng và làm một ứng dụng trên chính chiếc điện thoại Android để hỗ trợ cho việc tìm kiếm một cách dễ dàng và phải đỡ tốn thời gian cho người dùng
2 Mục tiêu và nhi ệm vụ
2.1 Mục tiêu:
Xây dựng được phần mềm tìm kiếm khách sạn ở các điểm du lịch trên Việt Nam Tìm hiểu được các công nghệ lập trình cần thiết trên nền Android để hoàn thành được các ứng dụng có thể tìm kiếm nhanh và chính xác vị trí khách sạn
Hiểu về nguyên lý hoạt động của Android, các thành phần của hệ thống cũng như của một ứng dụng thực thi trên nền Android
Tìm hiểu và áp dụng được các công nghệ lập trình trên nền Android như ngôn ngữ Java, tương tác với các tài nguyên hệ thống (GPS, Internet, TouchScreen), sử dụng
Trang 8Xây dựng hệ thống tra cứu khách sạn trên hệ điều hành Android
các dịch vụ của google như Google Map, Googe Places API, Google Direction API, Google Geocoding API
Tìm hiểu và xây dựng mọt dịch vụ web trên nền php sử dụng hệ cơ sở dữ liệu MySQL
2.2 Nhiệm vụ: Đọc các tài liệu liên quan về bộ thư viện lập trình trên nền Android
Tìm hiểu các dịch vụ liên quan đến ứng dụng
3 Đối tượng nghiên cứu và phạm vi hệ thống
3.1 Đối tượng:
Ngôn ngữ Java, PHP, Json, HTML
Công cụ Android SDK & Eclipse
Hệ điều hành và tài nguyên hệ thống Android
Các dịch vụ của Google như Google Map, Googe Places API, Google
Direction API, Google Geocoding API
3.2 Phạm vi: Đề tài chỉ dừng lại ở khuôn khổ tìm kiếm địa chỉ các khách sạn theo
tỉnh, thành phố, tên Khách sạn, ứng dụng mapview để tìm kiếm và dẫn đường trực quan cho người dùng Ứng dụng được viết trên nền Adroid 2
4 Phương pháp nghiên cứu
Đọc sách và các tài liệu tham khảo tìm được
5 Ý nghĩa thực tiễn của ứng dụng
Ứng dụng được xây dựng trên các thiết bị di động chạy trên nền tảng Android Người dùng có thể chia sẻ thông tin tìm kiếm khách sạn cần thiết
Thông qua ứng dụng này cho biết thêm được nhiều thông tin khách sạn hơn, qua đó người dùng dễ dàng tìm kiếm và có nhiều sự lựa chọn tốt nhất cho mình hơn
Đối tượng được hướng tới trong ứng dụng này là những người hay đi tham quan và khách du dịch có nhu cầu tìm kiếm thông tin khách sạn để nghỉ ngơi
Trang 9Xây dựng hệ thống tra cứu khách sạn trên hệ điều hành Android
3
Chương 3 TRIỂN KHAI VÀ ĐÁNH GIÁ KẾT QUẢ 3.1 HƯỚNG DẪN CÀI ĐẶT
3.1.1 Môi trường triển khai
Ngôn ngữ lập trình: Java
Hệ điều hành phát triển: Window 7
Thiết bị điện thoại di động chạy trên hệ điều hành Android
Nền tảng hệ điều hành: Android 4.2
Công cụ phát triển Eclipse
Máy ảo sử dụng: Genymotion (Virtual Box)
3.1.2 Cài đặt ứng dụng
Chạy Eclipse và import ứng dụng
Tạo máy ảo Genymotion với platform Android 4.2
3.2 MINH HỌA CHẠY CHƯƠNG TRÌNH
Giao diện màn hình chính của chương trình gồm 2 chức năng chính: khách sạn, thành phố
Hình 1: Giao diện Menu ứng dụng
Trang 10Xây dựng hệ thống tra cứu khách sạn trên hệ điều hành Android
4
- Giao diện thành phố: dùng để chọn thành phố cần tìm kiếm thông tin khách
sạn
Hình 2: Giao diện chọn thành phố
Trang 11Xây dựng hệ thống tra cứu khách sạn trên hệ điều hành Android
5
- Giao diện khách sạn : dùng để hiển thị danh sách các khách sạn
Hình 3: Giao diện khách sạn
Trang 12Xây dựng hệ thống tra cứu khách sạn trên hệ điều hành Android
6
- Giao diện chi tiết khách sạn : dùng để xem thông tin khách sạn một cách chi
tiết và cụ thể hơn
Hình 4: Giao diện thông tin chi tiết khách sạn
Trang 13Xây dựng hệ thống tra cứu khách sạn trên hệ điều hành Android
7
- Giao diện bản đồ: tìm kiếm đường đi nhanh nhất đến khách sạn
Hình 5: Giao diện để bật GPS
Trang 14Xây dựng hệ thống tra cứu khách sạn trên hệ điều hành Android
8
Hình 6: Giao diện chỉ đường đi đến khách sạn
Trang 15Xây dựng hệ thống tra cứu khách sạn trên hệ điều hành Android
9
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
Kết quả đạt được
Trong quá trình học tập và nghiên cứu làm đồ án tốt nghiệp, em đã nhận được nhiều sự giúp đỡ nhiệt tình của Thầy Cô cũng như các bạn để hoàn thành đề tài và
đã mang lại nhiều kết quả tốt
Về mặt lý thuyết: cơ bản đã hiểu được kiến trúc hệ điều hành Android, cách thức xây dựng một ứng dụng dựa trên nền hệ điều hành này
Về mặt thực nghiệm: cơ bản đã hoàn thành được các yêu cầu đặt ra, các chức năng hoạt động tốt
Hạn chế và hướng phát triển
Hạn chế:
Giao diện cho người dùng còn chưa được bắt mắt
Các chức năng còn ít và đơn giản
Hướng phát triển:
Hoàn thiện chức năng giao diện
Xây dựng chức năng tìm kiếm khách sạn được nhiều hơn
Phát triển ứng dụng thêm nhiều chức năng hỗ trợ khác