Mục tiêu đề tài: Hoàn thiện Ứng dụng hướng dẫn du lịch Việt Nam trên Android sao cho người sử dụng có thể thêm các thông tin về lễ hội và đặc sản tại mỗi vùng người đó đến.. Công bố kho
Trang 1TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THỦ ĐỨC
Trang 2TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THỦ ĐỨC
Thuộc nhóm ngành khoa học: Công nghệ Phần mềm
Sinh viên thực hiện: Phạm Hồng Dương Nam, Nữ: Nam
Trang 3MỤC LỤC
CHƯƠNG 1: GIỚI THIỆU ĐỀ TÀI 1
1.1 Lý do chọn đề tài 1
1.2 Mục tiêu đề tài 2
1.3 Đối tượng và phạm vi nghiên cứu 2
1.4 Phương pháp nghiên cứu 2
CHƯƠNG 2: TỔNG QUAN CƠ SỞ LÝ THUYẾT 3
2.1 Hệ điều hành Android 3
2.2 Material design 4
2.3 Realm 4
2.4 Google Maps 4
2.5 Firebase 5
2.6 Retrofit 5
2.7 Butter Knife 5
2.8 Android studio 5
2.9 Cơ sở thực tiễn của đề tài 5
CHƯƠNG 3: PHÂN TÍCH - THIẾT KẾ 6
3.1 Mô tả yêu cầu của ứng dụng 6
3.2 Phân tích thiết kế mô hình hệ thống .7
3.1.1 Use Cases Diagram & mô tả 7
3.1.2 Activity Diagram 14
3.1.3 Mockup ứng dụng 20
3.1.4 Database 22
3.1.5 Chức năng 24
CHƯƠNG 4: XÂY DỰNG CHƯƠNG TRÌNH 27
4.1 Xây dựng cấu trúc lưu trữ trên firebase 27
4.2 Đăng ký ứng dụng với google để lấy các Key .28
4.3 Xây dựng ứng dụng trên Android 28
CHƯƠNG 5: KẾT LUẬN VÀ KIẾN NGHỊ 40
5.1 Các kết quả đạt được 40
5.2 Hướng phát triển 40
5.3 Kết luận 40
TÀI LIỆU THAM KHẢO 41
Trang 4DANH MỤC HÌNH ẢNH
Hình 3 1 Use case người dùng 1 7
Hình 3 2 Use case người dùng 2 8
Hình 3 3 Use case người dùng 3 9
Hình 3 4 Use case hệ thống 1 10
Hình 3 5 Use case hệ thống 2 11
Hình 3 6 Activity diagram khi ứng dụng khởi chạy 14
Hình 3 7 Activity diagram khi ứng dụng gợi ý địa điểm 15
Hình 3 8 Activity diagram khi ứng dụng làm mới gợi ý 15
Hình 3 9 Activity diagram khi ứng dụng thay đổi cách hiển thị danh sách gợi ý 16
Hình 3 10 Activity diagram chức năng xếp hạng địa điểm 16
Hình 3 11 Activity diagram chức năng đánh dấu địa điểm 17
Hình 3 12 Activity diagram chức năng thay đổi kiểu hiển thị bản đồ 17
Hình 3 13 Activity diagram chức năng xác định vị trí hiện tại 18
Hình 3 14 Activity diagram chức năng tìm kiếm 18
Hình 3 15 Activity diagram chức năng chỉ đường 19
Hình 3 16 Activity diagram chức năng thêm địa điểm 19
Hình 3 17 Mockup giao diện bản đồ 20
Hình 3 18 Mockup giao diện gợi ý dạng bình thường 21
Hình 3 19 Mockup giao diện gợi ý dạng thẻ 21
Hình 3 20 Mockup giao diện chức năng thêm địa điểm 22
Hình 4 1 Cấu trúc toàn bộ dữ liệu 27
Hình 4 2 Cấu trúc dữ liệu con 28
Hình 4 3 Cấu trúc class 1 30
Hình 4 4 Cấu trúc class 2 30
Hình 4 5 Giao diện khi mở ứng dụng 31
Hình 4 6 Giao diện bản đồ cùng các địa điểm 32
Hình 4 7 Giao diện chỉ đường trên bản đồ 33
Hình 4 8 Giao diện bản đồ kiểu vệ tinh 34
Hình 4 9 Giao diện tìm kiếm 35
Hình 4 10 Giao diện danh sách gợi ý địa điểm dạng thường 36
Hình 4 11 Giao diện danh sách gợi ý địa điểm dạng thẻ 37
Hình 4 12 Giao diện thêm địa điểm 38
Hình 4 13 Giao diện xác định vị trí bằng bản đồ khi thêm địa điểm 39
Trang 5DANH MỤC BẢNG BIỂU
Bảng 3 1 Mô tả use case 14
Bảng 3 2 Mô tả database bảng Province 22
Bảng 3 3 Mô tả database bảng District 23
Bảng 3 4 Mô tả database bảng Landscape, Food, Festival 24
Bảng 3 5 Mô tả database bảng Version 24
Trang 6TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THỦ ĐỨC
THÔNG TIN KẾT QUẢ NGHIÊN CỨU CỦA ĐỀ TÀI
1 Thông tin chung:
- Tên đề tài: Hoàn thiện ứng dụng hướng dẫn du lịch Việt Nam trên Android
- Sinh viên thực hiện: Phạm Hồng Dương
- Lớp: CD13TT1 Khoa: Công nghệ thông tin Năm thứ: 3 Số năm đào tạo: 3
- Người hướng dẫn: Thạc sĩ Tiêu Kim Cương
2 Mục tiêu đề tài:
Hoàn thiện Ứng dụng hướng dẫn du lịch Việt Nam trên Android sao cho người sử dụng có thể thêm các thông tin về lễ hội và đặc sản tại mỗi vùng người đó đến Ngoài
ra còn cho phép người sử dụng đưa ý kiến của mình về các danh lam thắng cảnh, lễ hội
và ẩm thực nhằm tạo ra một cơ sở dữ liệu thống kê sinh động về các vùng du lịch ở Việt Nam Hệ thống cho phép người du lịch lựa chọn theo gợi ý của các công ty du lịch hoặc theo số liệu thống kê của người sử dụng đã du lịch trước đó
- Người dùng có thể nhận được hướng dẫn đường đi chính xác
- Người dùng có thể tìm kiếm địa điểm theo mong muốn
4 Kết quả nghiên cứu:
4.1 Kết quả khoa học
- Mô hình du lịch tự khám phá trong ngành du lịch
- Phần mềm Hướng dẫn du lịch Việt Nam trên Android đã hoàn thiện
- Một báo cáo khoa học
Trang 7- Sản phẩm công nghệ: Ứng dụng Android (phần mềm) phục vụ cho du lịch tự khám phá trên lãnh thổ Việt Nam
5 Đóng góp về mặt kinh tế - xã hội, giáo dục và đào tạo, an ninh, quốc phòng và khả năng áp dụng của đề tài:
- Cung cấp cho khách du lịch sử dụng để thực hiện các chuyến du lịch tự khám phá
6 Công bố khoa học của sinh viên từ kết quả nghiên cứu của đề tài (ghi rõ tên tạp
chí nếu có) hoặc nhận xét, đánh giá của cơ sở đã áp dụng các kết quả nghiên cứu (nếu có):
Ngày tháng năm
Sinh viên chịu trách nhiệm chính
thực hiện đề tài
(ký, họ và tên)
Nhận xét của người hướng dẫn về những đóng góp khoa học của sinh viên thực
hiện đề tài (phần này do người hướng dẫn ghi)
Sinh viên Phạm Hồng Dương bằng sự đam mê lập trình Android đã tìm tòi thêm nhiều kỹ thuật và công nghệ mới giúp hoàn thiện ứng dụng Hướng dẫn du lịch Việt Nam trên Android, phần mềm mà nhóm nghiên cứu trước đây thực hiện còn nhiều điểm chưa làm được: Thí dụ tìm đường chưa tốt, chưa có cơ sở dữ liệu về Lễ hội, chưa cho phép người sử dụng đưa ra ý kiến của mình và chia sẻ ý kiến đó cho cộng đồng người sử dụng Đó là những công việc đòi hỏi thời gian, công sức và sự
nỗ lực của người thực hiện trong việc tìm tòi, khám phá, đề xuất giải pháp và triển khai Sinh viên Phạm Hồng Dương đã làm rất tốt công việc của mình, hoàn thành tốt
Trang 8TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THỦ ĐỨC
THÔNG TIN VỀ SINH VIÊN CHỊU TRÁCH NHIỆM CHÍNH THỰC HIỆN ĐỀ TÀI
I SƠ LƯỢC VỀ SINH VIÊN:
Họ và tên: Phạm Hồng Dương
Sinh ngày: 26 tháng 04 năm 1994
Nơi sinh: Krông Ana – Đăk Lăk
Lớp: CD13TT1 Khóa: 2013
Khoa: Công nghệ thông tin
Địa chỉ liên hệ: 05 đường số 14, P.Linh Chiểu, Q.Thủ Đức, TP.Hồ Chí Minh
Điện thoại: 0969 340 351 Email: hongduong264@gmail.com
II QUÁ TRÌNH HỌC TẬP (kê khai thành tích của sinh viên từ năm thứ 1 đến năm
Trang 9CHƯƠNG 1: GIỚI THIỆU ĐỀ TÀI
1.1 Lý do chọn đề tài
Tính thời sự của đề tài: Du lịch tự khám phá đang là một trong những xu thế đang
được ưa chuộng hiện nay, giúp cho khách du lịch có thể tự do trải nghiệm cảm xúc theo ý thích cá nhân, không phụ thuộc vào lịch trình cứng của các tour du lịch cụ thể và giá thành rẻ Tuy nhiên, một trong những khó khăn lớn nhất của hình thức
du lịch này là sự không hiểu biết của chính bản thân người du lịch (các danh lam thắng cảnh cần đi, các đặc sản cần thưởng thức, vị trí địa lý cũng như đường đi trong từng vùng du lịch), đặc biệt là người nước ngoài Đã có những ứng dụng Web giới thiệu cho người dùng về từng điểm du lịch, nhưng vẫn còn nhiều hạn chế (phụ thuộc máy tính, không định vị được vị trí hiện tại cũng như từng điểm du lịch cần đến, không biết được đường đi chính xác…)
Tính cấp thiết đáp ứng nhu cầu phát triển kinh tế - xã hội, nâng cao chất lượng đào tạo:
- Với sự phát triển của công nghệ, việc viết ra các ứng dụng tiện lợi cho du lịch
tự khám phá trên các thiết bị di động là hoàn toàn khả thi Với một thiết bị di động Android thông thường, người du lịch hoàn toàn có thể biết chính xác các địa danh cần đến, các thắng cảnh cần quan tâm, các đặc sản cần thưởng thức… cũng như vị trí và đường đi chính xác từ vị trí hiện tại của người du lịch đến các nơi muốn đến Ứng dụng không những chỉ có ý nghĩa với khách
du lịch (trong nước và quốc tế) muốn tự khám phá các vùng ở Việt Nam, mà còn có thể trở thành công cụ hữu hiệu với các hướng dẫn viên du lịch, giảng viên du lịch trong bối cảnh hội nhập kinh tế quốc tế như hiện nay
- Năm 2015 đã có một nhóm sinh viên khoa CNTT, trường Cao đẳng Công nghệ
Thủ Đức thực hiện và bảo vệ thành công đề tài: “Phát triển ứng dụng hướng dẫn du lịch Việt Nam trên Android” nhằm hiện thực hoá ý tưởng trên Tuy nhiên, ứng dụng mới chỉ dừng ở mức xác định được các danh lam thắng cảnh cần tham quan cũng như hướng dẫn đường đi tới đó từ vị trí hiện tại của người sử dụng Người du lịch chưa hề có bất kỳ thông tin nào về các thông tin quan trọng khác như các lễ hội, các tục lệ, các loại đặc sản… Các thông tin này hầu như chưa được hỗ trợ trong cơ sở dữ liệu của Google do vậy cần mất
Trang 10nhiều thời gian và công sức tìm hiểu, nghiên cứu và bổ sung Ngoài ra, ứng dụng cũng chưa cho phép người sử dụng (người du lịch) được quyền chia sẻ kinh nghiệm của mình cho cộng đồng: Các danh lam thắng cảnh đưa ra theo gợi ý từ các công ty du lịch Đôi khi các thông tin này có thể không được khách quan Do vậy, ứng dụng nên bổ sung thêm chức năng cho phép người
sử dụng có thể chia sẻ quan điểm của mình về các địa điểm, lễ hội, đặc sản…
ở từng vùng, từng địa phương và dữ liệu thống kê này sẽ được sử dụng để hỗ trợ người du lịch đưa ra quyết định của mình
1.2 Mục tiêu đề tài
Hoàn thiện Ứng dụng hướng dẫn du lịch Việt Nam trên Android sao cho:
- Người sử dụng có thể nhận được các gợi ý về địa điểm, lễ hội và đặc sản phù hợp với vùng mà người đó đến
- Người sử dụng có thể đưa ý kiến của mình về các lễ hội, đặc sản đã được gợi ý và đóng góp ý kiến để thêm gợi ý
- Người sử dụng có thể lựa chọn cung cấp gợi ý theo dữ liệu của các công ty du lịch hoặc theo số liệu thống kê của người sử dụng đã du lịch trước đó
- Người dùng có thể nhận được hướng dẫn đường đi chính xác
- Người dùng có thể tìm kiếm địa điểm theo mong muốn
1.3 Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu: Ứng dụng hướng dẫn du lịch Việt Nam trên Android
Phạm vi: Hạn chế trên lãnh thổ Việt Nam, với các địa danh nổi tiếng trên cả ba miền
1.4 Phương pháp nghiên cứu
- Phân tích, chia nhỏ bài toán: Client (ứng dụng Android) và WebServer
- Thống kê các danh lam thắng cảnh, các lễ hội, các loại đặc sản… trên từng vùng của Việt Nam
- Thực nghiệm
- Phân tích tài liệu
Trang 11CHƯƠNG 2: TỔNG QUAN CƠ SỞ LÝ THUYẾT
2.1 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 mắt vào năm
2007 cùng với tuyên bố thành lập Liên minh thiết bị cầm tay mở: một hiệp hội gồm các công ty phần cứng, phần mềm, và viễn thông với mục tiêu đẩy mạnh các tiêu chuẩn mở cho các thiết bị di động Chiếc điện thoại đầu tiên chạy Android được bán vào tháng 10 năm 2008
Android có mã nguồn mở và Google phát hành mã nguồn theo Giấy phép Apache Chính mã nguồn mở cùng với một giấy phép không có nhiều ràng buộc đã cho phép các nhà phát triển thiết bị, mạng di động và các lập trình viên nhiệt huyết được điều chỉnh và phân phối Android một cách tự do Ngoài ra, Android còn có một cộng đồng lập trình viên đông đảo chuyên viết các ứng dụng để mở rộng chức năng của thiết bị, bằng một loại ngôn ngữ lập trình Java có sửa đổi Vào tháng 10 năm 2012, có khoảng 700.000 ứng dụng trên Android, và số lượt tải ứng dụng từ Google Play, cửa hàng ứng dụng chính của Android ước tính khoảng 25 tỷ lượt
Những yếu tố này đã giúp Android trở thành nền tảng điện thoại thông minh phổ biến nhất thế giới, vượt qua Symbian vào quý 4 năm 2010 và được các công ty công nghệ lựa chọn khi họ cần một hệ điều hành không nặng nề, có khả năng tinh chỉnh và giá rẻ chạy trên các thiết bị công nghệ cao thay vì tạo dựng từ đầu Kết quả là mặc dù được thiết kế để chạy trên điện thoại và máy tính bảng, Android đã xuất hiện trên TV, máy chơi game và các thiết bị điện tử khác Bản chất mở của Android cũng khích lệ một đội ngũ đông đảo lập trình viên và những người đam mê sử dụng mã nguồn mở để tạo
ra những dự án do cộng đồng quản lý Những dự án này bổ sung các tính năng cao cấp cho những người dùng thích tìm tòi hoặc đưa Android vào các thiết bị ban đầu chạy hệ điều hành khác Sự thành công của hệ điều hành cũng khiến nó trở thành mục tiêu trong các vụ kiện liên quan đến bằng phát minh, góp mặt trong cái gọi là "cuộc chiến điện thoại thông minh" giữa các công ty công nghệ
(Nguồn: wikipedia)
Trang 122.2 Material design
Material design là một hướng dẫn toàn diện về thiết kế trực quan, chuyển động và tương tác giữa nhiều nền tảng và thiết bị Có rất nhiều thư viện để giúp chúng ta tạo ra ứng dụng đẹp mắt và tiết kiệm thời gian hơn
Một số đối tượng Android cung cấp:
- Giao diện Material: Giao diện material mang đến một phong cách mới cho ứng dụng
và các Widget hệ thống, cho phép thay đổi màu của chúng và hiệu ứng mặc định khi chạm và chuyển tiếp Activity
- Danh sách và Thẻ: Android cung cấp hai loại Widget mới để hiển thị thẻ và danh sách và hình ảnh động bằng phong cách material design (RecyclerView và CardView)
- Đổ bóng: ngoài các thuộc tính X và Y thông thường thì còn có thêm Z Thuộc tính này sẽ biểu diễn độ cao của một View và sẽ quyết định View nào xuất hiện trên View nào và độ lớn của bóng
- Hiệu ứng: Cung cấp các hiệu ứng khi chạm vào các View trong Android
(Nguồn: https://developer.android.com/design/material/index.html )
2.3 Realm
Realm là một database cho mobile được rất nhiều người sử dụng Là một giải pháp thay thế cho SQLite và Core Data với nhiều ưu điểm như:
- Dễ sử dụng: Việc tạo các bảng, lưu trữ và truy vấn dữ liệu vô cùng đơn giản
- Nhanh: Tốc độ truy vấn và xử lý cao hơn SQLite
- Đa nền tảng: Hỗ trợ trên Android và IOS
Trang 132.5 Firebase
Firebase là một cơ sở dữ liệu được đồng bộ theo thời gian thực Dữ liệu được lưu trữ theo cấu trúc dạng Json Firebase cung cấp rất nhiều tính năng để hỗ trợ cho người lập trình Firebase cũng hỗ trợ đa nền tảng (Web, IOS, Android) giúp cho việc tương tác giữa các nền tảng trở nên dễ dàng hơn Sử dụng Firebase sẽ giúp nhà phát triển tiết kiệm được rất nhiều thời gian để phát triển ứng dụng
2.6 Retrofit
Retrofit là một thư viện giúp việc thực hiện tương tác để lấy về kết quả từ các Web API trở nên dễ dàng và an toàn hơn Nó cũng có thể tự parse các kết quả trả về thành các kiểu dữ liệu do chúng ta tùy chỉnh
2.7 Butter Knife
Butter Knife là một thư viện giúp thực hiện việc tìm kiếm View theo ID trong Layout
và Cast thành các kiểu tương ứng trong Android thông minh và đơn giản hơn Ngoài ra
nó cũng cung cấp một số sự kiện giúp cho việc tương tác với các View dễ dàng hơn như: OnClick, OnPageChange, OnCheckedChanged, OnFocusChange…
2.8 Android studio
Android studio là một công cụ lập trình do google phát triển hoàn toàn miễn phí Android studio có rất nhiều tính năng hỗ trợ để lập trình viên phát triển ứng dụng nhanh hơn Android studio phiên bản 2.0 trở lên còn hỗ trợ việc thay đổi giao diện trên ứng dụng sau khi sửa file xml mà không cần chạy lại toàn bộ ứng dụng Các thư viện được sử dụng một cách dễ dàng hơn rất nhiều
2.9 Cơ sở thực tiễn của đề tài
Để ứng dụng có thể gợi ý về các đặc sản, lễ hội cũng như địa điểm du lịch thì nhóm cần phải có nguồn dữ liệu để bổ sung, kết hợp với dữ liệu của google vì google chưa
hỗ trợ hoặc có rất ít những loại dữ liệu này Ở giai đoạn đầu, nhóm dựa vào những dữ liệu lấy từ các trang du lịch để bổ sung vào cơ sở dữ liệu của chương trình Ngoài việc lấy các thông tin sẵn có từ các trang du lịch thì nhóm còn phải xác định tọa độ chính xác của địa điểm đó ở trên bản đồ để có thể đưa ra gợi ý chính xác cho người dùng Ở giai đoạn sau này, ngoài việc dựa vào dữ liệu lấy từ các trang du lịch thì chính bản thân người dùng sẽ đóng góp dữ liệu cho chương trình thông qua các đánh giá và đóng góp địa điểm mà ứng dụng chưa có
Trang 14CHƯƠNG 3: PHÂN TÍCH - THIẾT KẾ
3.1 Mô tả yêu cầu của ứng dụng
Ứng dụng sẽ tự động gợi ý các địa điểm, đặc sản, lễ hội dựa vào vị trí hiện tại của người dùng Ngoài ra người dùng cũng có thể đóng góp ý kiến cá nhân bằng các xếp hạng cho địa điểm bất kỳ hoặc thêm địa điểm mà ứng dụng chưa có Người dùng có thể tìm kiếm các địa điểm gần đó theo nhu cầu bằng cách lựa chọn kiểu tìm kiếm và thêm các từ khóa tìm kiếm phù hợp cho khu vực hiện tại Ứng cũng sẽ cung cấp chỉ dẫn đường đi đến bất kỳ vị trí nào mà người dùng mong muốn Ngoài ra ứng dụng còn cung cấp cho người dùng những giao diện hiển thị khác nhau để người dụng lựa chọn
Sử dụng Firebase để lưu trữ dữ liệu ứng dụng Dữ liệu sẽ được Firebase trả về bằng cách hiển thị trên giao diện web dưới dạng Json
Trang 153.2 Phân tích thiết kế mô hình hệ thống
3.1.1 Use Cases Diagram & mô tả
3.1.1.1 Diagram
Hình 3 1 Use case người dùng 1
Trang 16Hình 3 2 Use case người dùng 2
Trang 17Hình 3 3 Use case người dùng 3
Trang 18Hình 3 4 Use case hệ thống 1
Trang 19Hình 3 5 Use case hệ thống 2
3.1.1.2 Mô tả
STT Tên Use case Mô tả
1 Xem gợi ý lễ hội Xem các lễ hội thuộc khu vực hiện tại
2 Xem gợi ý phong cảnh Xem các địa điểm có thể ngắm cảnh, tham
quan thuộc khu vực hiện tại
3 Xem gợi ý đặc sản Xem các đặc sản mà khu vực hiện tại có
4 Xem địa điểm xung quanh Xem các địa điểm gần vị trí hiện tại dựa
theo kết quả từ google
5 Làm mới lại gợi ý Thực hiện lại việc xác định khu vực hiện
tại và tìm kiếm kết quả phù hợp từ database và google
6 Thay đổi cách hiển thị Thay đổi giao diện hiển thị danh sách các
Trang 20gợi ý
7 Xếp hạng địa điểm Xếp hạng địa điểm được gợi ý bằng cách
đánh giá từ 1 đến 5 sao
8 Đánh dấu vị trí cần xem Đánh dấu vị trí của địa điểm vừa chọn
trong danh sách các gợi ý, sau đó chuyển sang giao diện hiển thị bản đồ và di chuyển camera về khu vực có địa điểm vừa đánh dấu
9 Xem đánh dấu trên bản đồ Xem các vị trí của các địa điểm được gợi
ý theo khu vực hiện tại được đánh dấu trên bản đồ
10 Thay đổi kiểu bản đồ Thay đổi kiểu hiển thị của bản đồ (kiểu vệ
tinh hoặc kiểu bản đồ vẽ)
11 Xác định vị trí hiện tại Di chuyển camera của bản đồ về vị trí
hiện tại của người dùng
12 Tìm kiếm Tìm kiếm địa điểm xung quanh dựa theo
vị trí hiện tại của người dùng và kiểu muốn tìm
13 Chỉ đường Chỉ đường từ vị trí hiện tại của người
dùng đến vị trí mong muốn
14 Thêm địa điểm Đóng góp thêm địa điểm mới cho cơ sở dữ
liệu của ứng dụng
15 Nhập tên địa điểm Nhập tên địa điểm muốn thêm
16 Xác định vị trí trên bản đồ Xác định vị trí của địa điểm muốn thêm
trên bản đồ để có vị trí chính xác
17 Xác định tỉnh Chọn khu vực cấp tỉnh của địa điểm
18 Xác định huyện Chọn khu vực cấp huyện của địa điểm
19 Chọn loại địa điểm Chọn loại địa điểm muốn đóng góp
(Phong cảnh, lễ hội, đặc sản)
20 Điền thêm một số thông tin Điền thêm một số thông tin bổ sung như:
Trang 21nhất, mô tả ngắn
21 Hiển thị gợi ý lễ hội Lấy danh sách các lễ hội có trong khu vực
hiện tại từ trong database và hiển thị lên màn hình
22 Hiển thị gợi ý phong cảnh Lấy danh sách các phong cảnh và địa danh
tham quan có trong khu vực hiện tại từ trong database và hiển thị lên màn hình
23 Hiển thị gợi ý đặc sản Lấy danh sách các đặc sản có trong khu
vực hiện tại từ trong database và hiển thị lên màn hình
24 Hiển thị địa điểm xung
quanh
Lấy danh sách các địa điểm gần vị trí hiện tại từ API của google và hiển thị lên màn hình
25 Đánh dấu trên bản đồ Đánh dấu các địa điểm (lễ hội, phong
cảnh, đặc sản, địa điểm lấy từ API của google) trên bản đồ bằng Marker
26 Lấy dữ liệu từ database Lấy dữ liệu các địa điểm (lễ hội, phong
cảnh, đặc sản) từ database phù hợp với khu vực hiện tại để hiển thị lên màn hình
27 Xác định vị trí hiện tại Xác định tọa độ của vị trí hiện tại và dựa
vào tọa độ đó để xác định khu vực hiện tại
28 Lấy kết quả từ API google Dựa vào tọa độ đã xác định được để lấy
các kết quả về địa điểm xung quanh từ API của google
29 Kiểm tra cập nhật Kiểm tra phiên bản dữ liệu hiện tại của
ứng dụng và phiên bản trên server có giống nhau hay không
30 Lấy mã số phiên bản trên
Trang 22database ứng dụng
32 Cập nhật dữ liệu Cập nhật lại toàn bộ dữ liệu ứng dụng nếu
mã số phiên bản dữ liệu trên server và mã
số phiên bản dữ liệu của ứng dụng không giống nhau
Bảng 3 1 Mô tả use case
3.1.2 Activity Diagram
3.1.2.1 Khi bắt mở ứng dụng
Hình 3 6 Activity diagram khi ứng dụng khởi chạy
Trang 233.1.2.2 Ứng dụng lấy các địa điểm gợi ý và đánh dấu lên bản đồ
Hình 3 7 Activity diagram khi ứng dụng gợi ý địa điểm
3.1.2.3 Thực hiện chức năng làm mới gợi ý
Hình 3 8 Activity diagram khi ứng dụng làm mới gợi ý
Trang 243.1.2.4 Thực hiên chức năng thay đổi cách hiển thị danh sách
Hình 3 9 Activity diagram khi ứng dụng thay đổi cách hiển thị danh sách gợi ý
3.1.2.5 Thực hiện chức năng xếp hạng địa điểm
Hình 3 10 Activity diagram chức năng xếp hạng địa điểm