Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố

21 324 1
Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Đồ án tốt nghiệp khoa công nghệ thông tin. Có đầy đủ file báo cáo và đường dẫn tới source code full. Tốt cho việc nghiên cứu làm đồ án tốt nghiệp. Có đầy đủ mục lục và hình ảnh demo minh họa. Đây là những source code , mình lấy từ: http:doanit.com

Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố MỤC LỤC LỜI CẢM ƠN ERROR! BOOKMARK NOT DEFINED. LỜI CAM ĐOAN ERROR! BOOKMARK NOT DEFINED. NHẬN XÉT CỦA GIÁO VIÊN HƢỚNG DẪNERROR! BOOKMARK NOT DEFINED. PHIẾU DUYỆT ĐỒ ÁN TỐT NGHIỆP ERROR! BOOKMARK NOT DEFINED. MỤC LỤC 1 DANH MỤC HÌNH ẢNH 3 DANH MỤC BẢNG 4 MỞ ĐẦU 5 CHƢƠNG 1. TỔNG QUAN ĐỀ TÀI .6 1.1 Giới thiệu đề tài .6 1.2. Mục đích và ý nghĩa 7 1.2.1. Mục đích 7 1.2.2. Ý nghĩa 7 1.3. Triển khai đề tài 7 1.3.1. Các bƣớc thực hiện 7 1.3.2. Mục tiêu cần đạt đƣợc 8 1.4. Phạm vi 8 1.5. Bố cục luận văn 8 CHƢƠNG 2. CƠ SỞ LÝ THUYẾT 10 2.1. Hệ điều hành iOs 10 2.1.1. Khái niệm 10 2.1.2. Các đặc tính 10 2.1.3. Kiến trúc hệ điều hành iOS 11 2.2. Ngôn ngữ lập trình Objective – C 13 2.2.1. Giới thiệu 13 2.2.2. Các thành phần 14 2.2.3. Các thế mạnh 14 2.2.4. Môi trƣờng lập trình Xcode 15 2.3. WebService 16 2.3.1. Giới thiệu 16 2.3.2. Kiến trúc 17 2.3.3. Hoạt động 18 CHƢƠNG 3. PHÂN TÍCH THIẾT KẾ HỆ THỐNG 20 3.1. Phân tích yêu cầu 20 3.1.1. Mô tả bài toán 20 3.1.2. Phân tích yêu cầu bài toán 20 3.1.3. Yêu cầu phi chức năng 23 Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố 3.1.4. Các chức năng chính của hệ thống 24 3.2. Phân tích thiết kế hệ thống 26 3.2.1. Biểu đồ ca sử dụng: 26 3.2.2. Biểu đồ tuần tự 31 3.2.3. Biểu đồ hoạt động: 35 3.2.4. Biểu đồ lớp 38 3.2.5. Thiết kế cơ sở dữ liệu 39 CHƢƠNG 4. TRIỂN KHAI VÀ THỰC NGHIỆM CHƢƠNG TRÌNH 41 4.1. Triển khai chƣơng trình 41 4.1.1. Hệ thống Server 41 4.1.2. Ứng dụng trên di động 44 4.2. Các thuật toán đƣợc sử dụng 48 4.2.1. Thuật toán lấy dữ liệu và hiển thị ngƣời dùng trên bản đồ 48 4.2.2. Thuật toán lấy lọc lấy thông tin và vị trí ngƣời trợ giúp hoặc ngƣời cần trợ giúp 48 4.3. THỰC NGHIỆM CHƢƠNG TRÌNH 50 4.3.1. Kết quả triển khai trên Webservice 50 4.3.2. Kết quả triển khai ứng dụng trên điện thoại di động 51 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN 57 I. Kết luận 57 1. Kết quả đạt đƣợc 57 2. Hạn chế 57 II. Hƣớng phát triển 58 PHỤ LỤC .59 TÓM TẮT LUẬN VĂN TỐT NGHIỆP .60 TÀI LIỆU THAM KHẢO 61 Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố DANH MỤC HÌNH ẢNH Hình 1. Kiến trúc iOS 11 Hình 2 : Chồng giao thức của dịch vụ Web 17 Hình 3 : Mô hình hoạt động của Web service 18 Hình 4. Biểu đồ ca sử dụng tổng thể 26 Hình 5. Biểu đồ tuần tự - Đăng ký 31 Hình 6. Biểu đồ tuần tự - Đăng nhập 31 Hình 7. Biểu đồ tuần tự - chỉnh sửa thông tin cá nhân 32 Hình 8. Biểu đồ tuần tự - Xem thông tin địa điểm 32 Hình 9. Biểu đồ tuần tự - Tra cứu địa điểm 33 Hình 10. Biểu đồ tuần tự - Gửi yêu cầu trợ giúp 33 Hình 11. Biểu đồ tuần tự - Nhận yêu cầu trợ giúp 34 Hình 12. Biểu đồ tuần tự - Phản hồi 34 Hình 13. Biểu đồ hoạt động – Đăng ký 35 Hình 14. Biểu đồ hoạt động – Đăng nhập 35 Hình 15. Biểu đồ hoạt động – Quản lý thông tin cá nhân 35 Hình 16. Biểu đồ hoạt động – Chỉnh sửa thông tin cá nhân 35 Hình 17. Biểu đồ hoạt động – Xem địa điểm 36 Hình 18. Biểu đồ hoạt động – Tra cứu địa điểm 36 Hình 19. Biểu đồ hoạt động – Gửi yêu cầu trợ giúp 37 Hình 20. Biểu đồ hoạt động – Phản hồi trợ giúp 37 Hình 21. Biểu đồ lớp 38 Hình 22. Mô hình cơ sở dữ liệu quan hệ 39 Hình 23. Màn hình Home Apps trên Webservice 42 Hình 24. Tạo một Class (Bảng) cho cơ sở dữ liệu 42 Hình 25. Tạo một cột cho bảng 43 Hình 26. Push Notification từ Webservice 43 Hình 27. Sơ đồ kết nối giữa ứng dụng với Webservice 45 Hình 28. Sơ đồ nhận dữ liệu từ Webservice của ứng dụng 46 Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố DANH MỤC BẢNG Bảng 1 : Bảng các chức năng đăng ký, đăng nhập 24 Bảng 2 : Bảng các chức năng quản lý thông tin cá nhân 24 Bảng 3 : Bảng các chức năng gọi trợ giúp 24 Bảng 4 : Bảng các chức năng trợ giúp 25 Bảng 5 : Bảng các chức năng phản hồi 25 Bảng 6. Ca sử dụng đăng ký 27 Bảng 7. Ca sử dụng đăng nhập 27 Bảng 8. Ca sử dụng quản lý thông tin cá nhân 28 Bảng 9. Ca sử dụng chỉnh sửa thông tin cá nhân 28 Bảng 10. Ca sử dụng gửi yêu cầu trợ giúp 29 Bảng 11. Ca sử dụng nhân yêu cầu trợ giúp 29 Bảng 12. Ca sử dụng phản hồi 30 Bảng 13. Bảng cơ sở dữ liệu - User 40 Bảng 14. Bảng cơ sở dữ liệu - Nhóm trợ giúp 40 Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố CHƢƠNG 1. TRIỂN KHAI VÀ THỰC NGHIỆM CHƢƠNG TRÌNH 1.1. TRIỂN KHAI CHƢƠNG TRÌNH 1.1.1. Hệ thống Server 1.1.1.1 Môi trường triển khai Hệ quản trị cơ sở dữ liệu : sử dụng dịch vụ đám mây Parse. Giao tiếp với ứng dụng quan ParseSDK. 1.1.1.2 Cài đặt cơ sở dữ liệu Cài đặt cơ sở dữ liệu thông qua 2 bƣớc:  Bƣớc 1 : Tạo cơ sỡ dữ liệu trên của server.  Bƣớc 2 : Import file cơ sở dữ liệu vào đám mây, tùy chỉnh các thông tin cho phù hợp. 1.1.1.3 Cài đặt WebService Cài đặt webservice thông qua các bƣớc sau :  Bƣớc 1 : Đăng ký tài khoản sử dụng Parse. Vào http://www.parse.com để đăng ký 1 tài khoản. • Sau đó đăng nhập vào Parse rồi vào mục Dashboard (https://www.parse.com/apps) để thiết lập một số thông tin:  Bƣớc 2 : Tạo mới 1 ứng dụng (App) và đặt tên cho nó, ví dụ: DoAnTN  Bƣớc 3 : Thiết lập thông tin cho ứng dụng, lấy Application ID và JavaScript Key  Bƣớc 4 : Tạo cơ sở dữ liệu và bắt đầu kết nối dữ liệu với ứng dụng 1.1.1.4 Khai thác WebService Link để thao tác với Web service: https://www.parse.com/apps Lƣu trữ dữ liệu trên Parse đƣợc xây dựng xung quanh các ParseObject. Mỗi ParseObject chứa cặp khóa-giá trị của dữ liệu JSON-tƣơng thích. Với dữ liệu này chúng ta không cần phải xác định trƣớc những gì tồn tại trên mỗi phím ParseObject. Bạn chỉ cần đặt bất cứ điều gì giá trị khóa cặp mình muốn, và phụ trợ của Parse sẽ lƣu giữ nó. Ví dụ, giả sử đang theo dõi điểm số cao cho một trò chơi. Một PFObject duy nhất có thể chứa: Điểm số: 1337, playername: "Sean Plott", cheatMode: false Phím phải đƣợc chuỗi chữ và số. Các giá trị có thể là chuỗi, số, các phép toán luận, hoặc thậm chí các mảng và từ điển - bất cứ điều gì mà có thể là JSON mã hóa. Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố Mỗi ParseObject có một tên lớp học mà chúng ta có thể sử dụng để phân biệt các loại dữ liệu khác nhau. Để lƣu một dữ liệu: giao diện tƣơng tự nhƣ lƣu một NSMutableDictionary, cộng với phƣơng pháp saveInBackground Hình 23. Màn hình Home Apps trên service Hình 24. Tạo một Class (Bảng) cho cơ sở dữ liệu Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố Hình 25. Tạo một cột cho bảng Hình 26. Bảng Push Notification từ service Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố 1.1.2. Ứng dụng trên di động Ứng dụng trên điện thoại di động iPhone là chƣơng trình khai thác kho dữ liệu và chƣơng trình này đƣợc hệ thống cung cấp nên có thêm các chức năng đăng tải thông để xây dựng kho dữ liệu. Tên ứng dụng trên điện thoại di động iPhone : Ngƣời Việt thân thiện 1.1.2.1 Môi trường triển khai  Ngôn ngữ lập trình : Objective-C  Thiết bị : điện thoại di động iPhone, iPop Touch, iPad  Nền tảng hệ điều hành di động : iOS 7.0  Hệ điều hành phát triển : MacOS 10.10.3  Công cụ phát triển : Xcode 6.2 1.1.2.2 Cài đặt ứng dụng Cài đặt ứng dụng thông qua 2 nguồn chính:  Download thông qua FTP và tiến hành đồng bộ ứng dụng vào thiết bị.  Download thông qua App Store 1.1.2.3 Giao diện ứng dụng Giao diện ứng dụng làm theo chuẩn iPhone: Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố Trong đó:  Vùng 1 là Navigation bar : chịu trách nhiệm hiển thị tiêu đề, chuyển hƣớng và các action thao tác chính trên một màn hình.  Vùng 2 là View : hiển thị nội dung, các thao tác, nhập xuất v v  Vùng 3 là Toolbar : Luồng màn hình theo các nhóm chức năng 1.1.2.4 Thao tác dữ liệu với Webservice Ứng dụng đƣợc xây dựng trên điện thoại di động nên việc lƣu trữ dữ liệu rất khó khăn khi lƣợng dữ liệu lớn và phức tạp. Và để tăng tốc độ xử lý dữ liệu nên phần dữ liệu chính là Web Service của kho dữ liệu đặt trên Server. Kết nối với Server thông qua sơ đồ sau: Hình 27 : Sơ đồ kết nối giữa ứng dụng với Server Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố Sau khi kết nối thành công với Web Service thì Web Service sẽ trả về một response về lại ứng dụng, việc xử lý sự kiện thông qua sơ đồ sau: Hình 28: Sơ đồ nhận dữ liệu từ Web Service của ứng dụng Dữ liệu trả về theo định dạng XML, việc phân tích dữ liệu XML sử dụng đối tƣợng NSXMLParser. 1.1.2.5 Ứng dụng google MAP API vào triển khai ứng dụng Ngoài dữ liệu chính là của kho dữ liệu, thì ứng dụng còn tích hợp các phƣơng thức của Google MAP nhằm giúp ngƣời dùm tìm kiếm các địa điểm công cộng, mang tính chất chỉ đƣờng và tham khảo. Google MAP chính là một hệ thống Web Service về toàn bộ bản đồ trên thế giới, với kho dữ liệu phong phú và hệ thống ngƣời dùng đông đảo, thƣờng xuyên cập nhập. Google MAP API là các phƣơng thức truy cập tới kho dữ liệu này và hoàn toàn đƣợc cung cấp miễn phí cho các nhà phát triển và các lập trình viên. Kết thúc Lưu trữ dữ liệu vào đối tượng Bắt đầu Đúng Sai Khởi tạo đối tượng nhận Response Kết nối nhận dữ liệu Nhận dữ liệu trả về Hũy kết nối [...]... 3/push_notifications Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố 1.3.2 Kết quả triển khai ứng dụng trên điện thoại di động 1.3.2.1 Đăng ký, đăng nhập Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố 1.3.2.2 Thông tin tài khoản Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố 1.3.2.3 Tìm kiếm địa điểm Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố 1.3.2.4... sự cố 1.3.2.4 Gọi trợ giúp Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố 1.3.2.5 Nhận trợ giúp Đây chỉ là mục lục và demo hình ảnh của đồ án, nếu bạn cần file báo cáo full và source code hãy liên hệ qua mail doanit.com@gmail.com Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố 1.3.2.6 Phản hồi Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố ... từ ngƣời dùng Hệ thống sẽ tiếp tục chu trình lấy thêm 5 ngƣời gần nhất  Phiên trợ giúp sẽ kết thúc nếu sau 2 phút không có phản hồi nào  Ngƣời cần trợ giúp sẽ phải tạo thêm một phiên trợ giúp mới x=1; if(giay=30x) then sendPush(); x++; if(x=5) then huyTrogiup(); Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố 1.3 THỰC NGHIỆM CHƢƠNG TRÌNH 1.3.1 Kết quả triển khai trên Webservice Đƣờng... Sử dụng Google MAP  Tìm kiếm các địa điểm công cộng  Lấy vị trí địa điểm trên bản đồ Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố 1.2 CÁC THUẬT TOÁN ĐƢỢC SỬ DỤNG 1.2.1 Thuật toán lấy dữ liệu và hiển thị ngƣời dùng trên bản đồ  Mỗi ngƣời dùng có một ID riêng và vị trí hiện tai của mình  Vị trí sẽ đƣợc gửi lên server 10s một lần  Khi một ngƣời dùng đăng nhập thành công vào ứng dụng. .. với mình Địa điểm đƣợc phân biệt bằng thuộc tính vĩ độ latitude và kinh độ longitude x=location(Nguoidung); SELECT FROM User Kết quả: sẽ là một mảng chứa toàn bộ User; For i=0 in mangUser{ y=location(User); distance= khoảng cách từ x->y; } Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố  Truy cập vào bảng User lấy đƣợc thông tin, mỗi ngƣời dùng sẽ có một device Token Device token giống.. .Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố Ứng dụng khai thác 2 phần chính của Google MAP  Google MAP API Web Service: chứa các request để lấy thông tin các về một địa điểm, bao gồm : kinh tuyến, vĩ tuyến, tên, quốc... thời lấy vị trí của những ngƣời khác về x=1; if (giay=10x) then sendViTri( ) and getViTriNguoiDung( ); x++; 1.2.2 Thuật toán lấy lọc lấy thông tin và vị trí ngƣời trợ giúp hoặc ngƣời cần trợ giúp và gửi Push Notification  Khi gặp sự cố Ngƣời cần trợ giúp tạo ra một phiên trợ giúp bằng cách nhập thông tin trợ giúp  Lấy 5 ngƣời xung quanh gần nhất để gửi push notification bằng cách lọc và tính khoảng... làm nhiều loại khác nhau, nhƣ : nhà hàng, bệnh viện, khách sạn  Truy cập Google MAP tƣơng tự nhƣ việc kết nối Web Service của kho dữ liệu Kiểu dữ liệu trả về chính của Google MAP là XML và JSON, nên việc phân tích dữ liệu của Google MAP cũng tƣơng tự nhƣ việc phân tích dữ liệu XML trả về của kho dữ liệu 1.1.2.6 Các nhóm chức năng chính của ứng dụng  Ngƣời dùng  Đăng ký  Đăng nhập  Quên mật khẩu . Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố 1.3.2.4 Gọi trợ giúp Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố 1.3.2.5 Nhận trợ giúp. Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố 1.3.2.2 Thông tin tài khoản Xây dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố 1.3.2.3 Tìm. dựng ứng dụng di động trợ giúp khách du lịch khi gặp sự cố Hình 25. Tạo một cột cho bảng Hình 26. Bảng Push Notification từ service Xây dựng ứng dụng di động trợ giúp khách du

Ngày đăng: 24/08/2015, 21:38

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan