Đồ án Ứng dụng tìm kiếm thông tin bản đồ trên thiết bị Android

Contents

Lời nói đầu . 6

Chương I: Giới thiệu. 7

I.1 Du lịch Nha Trang . 7

I.2 Công nghệ thiết bị di động . 8

I.2.1 Di động đi tắt đón đầu trong thế giới công nghệ . 8

I.2.2 Thời kỳ “hậu PC” và cơ hội cho các lập trình viên di động . 10

I.3 Mục đích thực hiện đề tài . 13

Chương II: Hệ điều hành Android . 15

II.1 Giới thiệu hệ điều hành Android . 15

II.2 Những đặc trưng của hệ điều hành Android: . 15

II.3 Các tính năng hỗ trợ sẵn trong hệ điều hành Android . 16

II.4 Kiến trúc và các thành phần trong hệ điều hành Android . 17

II.4.1 Linux kernel (nhân Linux) . 17

II.4.2 Libraries . 17

II.4.3 Android runtime: . 18

II.4.4 Application framework 2.4.3 Android runtime: . 18

II.4.5 Applications: . 19

II.5 Các khái niệm cơ bản trong lập trình ứng dụng Android . 19

II.5.1 Activity . 19

II.5.2 Service . 22

II.5.3 Content provider . 23

II.5.4 Broadcast Receive . 23

II.5.5 View. 23

II.5.6. Intent . 24

II.6 Các thành phần trong một project ứng dụng Android . 25

II.6.1. AndroidManifest.xml . 25

II.6.2. File R.java . 26

II.6.3 Thư mục src . 26

II.6.4 Thư mục rec . 26

Chương III: Công nghệ XML và Webservice . 27

III.1 Công nghệ XML . 27

III.1.1 Lịch sử ra đời chuẩn XML, XML là gì? . 27

III.1.2 Cấu trúc của file XML và tài liệu XML . 27

III.1.3 Đặc điểm của XML . 28

III.1.4 XML và HTML . 29

III.1.5 Ngôn ngữ đặt tả cấu trúc . 29

III.1.6 Ưu điểm của XML . 30

III.2 Webservice . 31

III.2.1 Webservice là gì ? . 31

III.2.2 Một số đặt điểm cơ bản của webservice . 32

III.2.3 Phân loại webservice . 32

Chương IV: Google Map và Google Maps API Web Services . 34

IV.1 Google Map . 34

IV.1.1 Giới thiệu Google Map . 34

IV.1.2 Google Maps for Mobile . 35

IV.2 Google Maps API Web Services . 37

IV.2.1 Giới thiệu Google Maps API Web Services . 37

IV.2.2 Sử dụng Google Maps API Web Services . 37

IV.3 Google Geocoding API . 40

IV.3.1 Mã hóa địa lý là gì? . 40

IV.3.2 Giới hạn sử dụng . 40

IV.3.3 Geocoding API request . 40

IV.3.4 Kết quả mã hóa địa lý . 41

IV.3.5 Giải mã địa lý (tìm địa chỉ từ kinh độ-vĩ độ) . 47

IV.4 Google Distance Matrix API . 50

IV.4.1 Giới hạn sử dụng . 50

IV.4.2 Distance Matrix API request . 50

IV.4.3 Kết quả từ Distance Matrix API . 52

IV.5 Google Direction API . 58

IV.5.1 Giới hạn sử dụng . 58

IV.5.2 Google Direction request . 58

IV.5.3 Kết quả trả về Google Direction . 61

Chương V: Cơ sở dữ liệu SQLite . 70

V.1 Giới thiệu SQLite . 70

V.2 Thiết kế của SQLite . 70

V.3 Các đặc tính của SQLite . 71

V.4 Sử dụng SQLite . 71

V.4.1 Những trường hợp thích hợp sử dụng SQLite . 71

V.4.2 Những trường hợp không thích hợp sử dụng SQLite . 73

V.5 Các ứng dụng lớn của SQLite . 74

Chương VI: Xây dựng ứng dụng . 75

VI.1 Phân tích thiết kế dữ liệu . 75

VI.1.1 Đặc tả hệ thống . 75

VI.1.2 Mô hình thực thể kết hợp . 76

VI.1.3 Mô hình vật lý dữ liệu . 77

VI.2 Các yêu cầu về chức năng của chương trình . 77

VI.3 Các vấn đề trong quá trình xây dựng ứng dụng . 78

VI.3.1 Giao diện UI trong lập trình ứng dụng Android . 78

VI.3.2 Đăng ký bản đồ Google Map trong ứng dụng . 82

VI.3.3 Đánh dấu địa điểm và hiện thông tin trên bản đồ . 83

VI.3.4 Sử dụng SQLite trong hệ điều hành Android . 84

VI.3.5 Phân tích cú pháp XML . 86

VI.3.6 Chạy đa tiến trình các tác vụ truy cập mạng nhằm giảm độ trễ cho ứng dụng . 87

VI.3.7 Bắt vị trí hiện tại bằng các Location Provider . 88

VI.3.8 Dùng Observer Template để thông báo cho các Activity mỗi khi địa điểm hiện tại

thay đổi . 90

VI.3.9 Gọi các Activity và truyền dữ liệu giữa chúng . 91

VI.4 Kết quả xây dựng ứng dụng . 92

Chương VII: Tổng kết . 106

VII.1 Ưu khuyết điểm của chương trình đã xây dựng . 106

VII.1.1 Ưu điểm . 106

VII.1.2 Khuyết điểm. 106

VII.2 Hướng đi trong tương lai . 106

VII.3 Kết quả đạt được . 107

Tài liệu tham khảo . 108

pdf108 trang | Chuyên mục: Android | Chia sẻ: dkS00TYs | Lượt xem: 4490 | Lượt tải: 1download
Tóm tắt nội dung Đồ án Ứng dụng tìm kiếm thông tin bản đồ trên thiết bị Android, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
 kết các chức năng của chương trình đã xây dựng được 
 Hiển thị bản đồ Google Map, mặc định khu vực Nha Trang, cung cấp chức 
năng zoom bằng điều khiển hoặc hai ngón tay. 
 Hiển thị danh sách thông tin 6 tuyến xe buýt. 
 Xem thông tin chi tiết tuyến xe, xem tuyến xe trên bản đồ, tìm trạm gần. 
 Hiển thị danh sách địa điểm phân theo loại địa điểm. 
 Mỗi danh sách địa điểm phân chia thành các danh sách con. 
 Tính toán khoảng cách từ địa điểm đến trí hiện tại. 
 Xem nhanh danh sách địa điểm trên bản đồ. 
 Cung cấp thông tin chi tiết địa điểm. 
 Cho phép người dùng đánh dấu địa điểm yêu thích. 
 Chính sửa thông tin của địa điểm, chọn loại địa điểm. 
 Chức năng tự hoàn thành tên đường. 
 Thêm ảnh minh họa cho địa điểm bằng cách: bật máy ảnh của máy để chụp 
ảnh, lấy trong máy. 
 Cập nhật ảnh chính bằng cách: bật máy ảnh của máy để chụp ảnh, lấy trong 
máy, lấy từ danh sách ảnh của địa điểm. 
Ứng dụng tìm kiếm thông tin bản đồ trên thiết bị Android 
GVHD: Trần Minh Văn | SVTH: Trần Mạnh Cường 93 
 Hiển thị danh sách các tuyến xe buýt gần địa điểm. 
 Chức năng xem nhanh các trạm gần địa điểm trên bản đồ. 
 Giao diện xem ảnh, zoom ảnh, thêm và xóa ảnh. 
 Gọi điện trực tiếp từ giao điện chi tiết địa điểm. 
 Chức năng chỉ đường nhanh từ giao diện chi tiết địa điểm. 
 Bắt vị trí hiện tại bằng GPS hoặc mạng. 
 Tính toán địa chỉ hiện tại, cung cấp thông tin độ chính xác và nguồn lấy vịt 
trí hiện tại. 
 Click vào điểm đánh dấu vị trí hiện tại trên bản đồ để hiển thị thông tin tóm 
tắc và chi tiết của vị trí hiện tại. 
 Thêm địa điểm từ vị trí hiện tại hoặc chọn vị trí trên bản đồ. 
 Xóa địa điểm. 
 Click chọn địa điểm trên bản đồ để hiển thị thông tin tóm tắc của địa điểm, 
bao gồm khoảng cách đến vị trí hiện tại. 
 Truy cập nhanh chi tiết địa điểm từ bản đồ. 
 Chức năng hiển thị đường đi của xe, trạm xe của mỗi tuyến trên bản đồ. 
 Có thể hiển thị nhiều tuyến cùng lúc. 
 Chức năng chỉ đường đến địa điểm. 
 Vẽ kết quả chỉ đường lên bản đồ, chia thành từng bước cung cấp thông tin 
hướng dẫn. 
 Giao diện hiển thị thông tin chi tiết hướng dẫn chỉ đường, có bao gồm thông 
tin khoảng cách, thời gian ước lượng toàn bộ và từng bước. 
Ứng dụng tìm kiếm thông tin bản đồ trên thiết bị Android 
GVHD: Trần Minh Văn | SVTH: Trần Mạnh Cường 94 
Giải thích chức năng của chương trình 
Giao diện chính: 
Trược sang phải vào giao diện danh sách tuyến xe buýt, trượt sang trái vào giao 
điện danh sách địa điểm. 
Giao diện tuyến xe buýt 
Mỗi tuyến xe cung cấp các thông tin: tên tuyến, lộ trình tóm tắc, giá vé, tần 
xuất. Click chọn để vào giao diện chi tiết tuyến xe. 
Ứng dụng tìm kiếm thông tin bản đồ trên thiết bị Android 
GVHD: Trần Minh Văn | SVTH: Trần Mạnh Cường 95 
Giao diện chi tiết tuyến xe 
Giao diện chi tiết tuyến xe cung cấp các thông tin: tên tuyến, lộ trình tóm tắc, 
giá vé, tần xuất, cự ly tuyến, lộ trình chi tiết. 
Nút nhấn ‘Xem trên bản đồ’ chuyển qua bản đồ và hiển thị đường đi và các 
trạm của tuyến. 
Nút nhấn xem các trạm gần để hiển thị danh sách các trạm của tuyến xe gần vị 
trí hiện tại trong khoảng cách 300 mét. 
Ứng dụng tìm kiếm thông tin bản đồ trên thiết bị Android 
GVHD: Trần Minh Văn | SVTH: Trần Mạnh Cường 96 
Click vào trạm trên bản đồ hiển thị địa chỉ và các tuyến của trạm 
Có thể hiển thị nhiều đường đi, nhiều danh sách trạm của nhiều tuyến cùng 
lúc. 
Ứng dụng tìm kiếm thông tin bản đồ trên thiết bị Android 
GVHD: Trần Minh Văn | SVTH: Trần Mạnh Cường 97 
Giao diện danh sách địa điểm 
Hàng trên cùng hiển thị danh sách các loại địa điểm theo biểu tượng. Kích vào 
để chọn danh sách địa điểm tương ứng. Mỗi danh sách có các danh sách con là địa 
điểm được đánh dấu yêu thích và địa điểm của người dùng thêm vào. 
Nếu tính được khoảng cách từ người dùng đến địa điểm. Danh sách địa điểm sẽ 
được xắp xếp theo thứ tự từ gần đến xa. 
Ứng dụng tìm kiếm thông tin bản đồ trên thiết bị Android 
GVHD: Trần Minh Văn | SVTH: Trần Mạnh Cường 98 
Biểu tượng người có màu xanh sẽ cho biết đó là địa điểm người dùng tự thêm 
vào, màu xám là địa điểm có sẵn của hệ thống. 
Biểu tượng trái tim màu hồng là địa điểm được đánh dấu yêu thích. Trái tim 
màu xám là địa điểm chưa được đánh dấu. 
Kích vào mỗi địa điểm sẽ hiển thị chi tiết địa điểm. Kích vào nút bản đổ để 
chuyển nhanh sang bản đồ hiển thị danh sách địa điểm hiện tại. 
Chi tiết địa điểm 
Giao diện chi tiết địa điểm hiển thị các thông tin đầy đủ về địa điểm. Biểu 
tượng ở hàng thứ hai cho biết địa điểm thuộc loại nào. Một địa điểm có thể thuộc 
nhiều loại. Nút nhấn ở phần địa chỉ có chức năng chỉ đường nhanh. Nút nhấn ở phần 
số điện thoại để chuyển nhanh sang phần gọi của điện thoại. Ở phần tuyến xe buýt hiển 
thị các tuyến xe buýt gần địa điểm (có trạm cách địa điểm 300m). Danh sách hình ảnh 
của địa điểm thiết kế theo dạng trượt. Kích chọn một hình ảnh bất kỳ để chuyển sang 
giao diện xem ảnh. Có thể thêm ảnh nhanh trên danh sách ảnh. 
Các thông tin của địa điểm có thể sửa trực tiếp bằng cách kích và giữ trong 
khoảng 1 giây. 
Chọn ảnh chính 
Ứng dụng tìm kiếm thông tin bản đồ trên thiết bị Android 
GVHD: Trần Minh Văn | SVTH: Trần Mạnh Cường 99 
Có ba cách để lấy ảnh chính cho địa điểm : chọn từ danh sách ảnh đã có của địa 
điểm, dùng camera chụp ảnh mới, dùng ảnh có sẵn trong bộ nhớ máy. Sau khi đã chọn 
ảnh, chương trình sẽ gọi chức năng crop của hệ thống để lấy phần ảnh phù hợp theo 
hình vuông. 
Sửa tên địa điểm 
Ứng dụng tìm kiếm thông tin bản đồ trên thiết bị Android 
GVHD: Trần Minh Văn | SVTH: Trần Mạnh Cường 100 
Các giao diện sửa số điện thoại, sửa mô tả tương tự sửa tên địa điểm. 
Sửa loại của địa điểm 
Sửa địa chỉ 
Ứng dụng tìm kiếm thông tin bản đồ trên thiết bị Android 
GVHD: Trần Minh Văn | SVTH: Trần Mạnh Cường 101 
Ứng dụng có khả năng tự nhận dạng tên đường. 
Giao diện xem ảnh 
Giao diện xem ảnh cung cấp khả năng phóng to thu nhỏ bằng hai ngón tay. 
Chuyển ảnh bằng cách trượt trên thanh tên địa điểm hoặc kích vào biểu tượng ‘>’ ở hai 
Ứng dụng tìm kiếm thông tin bản đồ trên thiết bị Android 
GVHD: Trần Minh Văn | SVTH: Trần Mạnh Cường 102 
góc. Ngoài ra trên giao diện ảnh cũng cung cấp chức năng xóa ảnh và thêm ảnh mới 
bằng menu. 
Giao diện bản đồ hiển thị danh sách địa điểm 
Kích vào mỗi đánh dấu địa điểm sẽ hiển thị thông tin tóm tắc. Kích vào bản 
thông tin địa điểm để chuyển sang chi tiết địa điểm. 
Vị trí hiện tại 
Ứng dụng tìm kiếm thông tin bản đồ trên thiết bị Android 
GVHD: Trần Minh Văn | SVTH: Trần Mạnh Cường 103 
Vị trí hiện tại được đánh dấu bằng biểu tượng màu hồng. Vòng tròn chung 
quanh là độ chính xác của vị trí bắt được. 
Địa chỉ lấy được bằng cách mã hóa địa lý. Có cho biết vị trí hiện tại bắt được 
bằng GPS hay Network. 
Thêm địa điểm 
Ứng dụng tìm kiếm thông tin bản đồ trên thiết bị Android 
GVHD: Trần Minh Văn | SVTH: Trần Mạnh Cường 104 
Có hai cách thêm địa điểm mới : thêm từ vịt trí hiện tại và thêm một điểm chọn 
trên bản đồ. 
Chỉ đường 
Đường màu xanh là con đường gợi ý đi đến mục tiêu. Biểu tượng B là các điểm 
phải rẽ. Kích vào để hiển thị thông tin chỉ đường cho điểm rẽ. Kích vào nút chỉ đường 
màu hồng để chuyển sang giao diện chi tiết chỉ đường. 
Ứng dụng tìm kiếm thông tin bản đồ trên thiết bị Android 
GVHD: Trần Minh Văn | SVTH: Trần Mạnh Cường 105 
Bản đồ 
Có thể cùng lúc hiển thị nhiều thông tin : địa điểm, đường và trạm xe buýt, chỉ 
đường … lên bản đồ. 
Ứng dụng tìm kiếm thông tin bản đồ trên thiết bị Android 
GVHD: Trần Minh Văn | SVTH: Trần Mạnh Cường 106 
Chương VII: Tổng kết 
VII.1 Ưu khuyết điểm của chương trình đã xây dựng 
VII.1.1 Ưu điểm 
 Chương trình có thể cung cấp nhiều địa điểm ở Nha Trang phục vụ khách du 
lịch. Cho phép người sử dụng lưu giữ vị trí các địa điểm yêu thích một cách 
nhanh chóng. Sử dụng, cập nhật các thông tin địa điểm theo nhiều cách khá 
trực quan. 
 Cung cấp thông tin các tuyến xe buýt trực quan trên bản đồ giúp người sử 
dụng tìm ra tuyến xe buýt phù hợp cho chuyến đi của mình. 
 Vì là chương trình hoạt động trên thiết bị di động nên sử dụng khá tiện lợi. 
VII.1.2 Khuyết điểm 
 Chương trình yêu cầu kết nối mạng (wifi hoặc 3G) khi sử dụng. 
 Vẫn còn thiếu sót nhiều chức năng, ví dụ : chia sẻ địa điểm lên các mạng xã 
hội… 
 Chưa có cơ chế cập nhật dữ liệu thông qua mạng, muốn cập nhật dữ liệu 
phải cập nhật cả phần mềm. 
 Chưa có cơ chế sao lưu dữ liệu người dùng, nếu xóa phần mềm, dữ liệu 
người dùng sẽ mất. 
 Chưa cho phép người dùng thêm loại địa điểm mới 
VII.2 Hướng đi trong tương lai 
 Bổ sung dữ liệu. 
 Tạo loại địa điểm mới định nghĩa bởi người dùng 
 Xây dựng cơ chế nạp dữ liệu cập nhật thông qua mạng, có thể dùng xml. 
 Hoặc xây dựng một cơ sở dữ liệu trên máy chủ, phần mềm sẽ hoạt động như 
một ứng dụng phía client. Cho phép mở rộng rất nhiều chức năng hữu ích: 
bình luận, đánh giá, bài viết, chia sẽ giữa người dùng với nhau… Và có thể 
hoạt động như một mạng xã hội. 
Ứng dụng tìm kiếm thông tin bản đồ trên thiết bị Android 
GVHD: Trần Minh Văn | SVTH: Trần Mạnh Cường 107 
VII.3 Kết quả đạt được 
 Thiết kế giao diện trên Android. 
 Lập trình Java trên nền tảng Android. 
 Sử dụng Google API Webservice 
 Sử dụng Google Map 
 Sử dụng XML 
 Kiến thức về SQLite 
 Kiến thức hệ thông thông tin địa lý GIS 
 Xây dựng được ứng dụng quản lý trên Android 
Ứng dụng tìm kiếm thông tin bản đồ trên thiết bị Android 
GVHD: Trần Minh Văn | SVTH: Trần Mạnh Cường 108 
Tài liệu tham khảo 
Các tài liệu sử dụng: 
 The Android mobile platform - Benjamin Speckmann 
 Tìm hiểu các Layout cơ bản trong Android - Nguyễn Văn Kiên St 
 Android Application Development - Perth, Western Australia, Reto Meier 
Các đường link tham khảo: 
 
tin/76/5125452.epi 
 
muc/2011/03/1224392/thoi-dai-hau-pc-va-muc-tieu-cho-nganh-cntt/ 
 
cu-phap-cua-xml.html 
  
  
 http:// vietandroid.com 
  
  
  
 https://developers.google.com/maps/documentation/webservices/ 

File đính kèm:

  • pdfỨng dụng tìm kiếm thông tin bản đồ trên thiết bị Android.pdf
Tài liệu liên quan