PHẦN A - LÝ THUYẾT VỀ LOCATION BASED SERVICE
Chương 3 CÁC NỀN TẢNG HỖ TRỢ LẬP TRÌNH LBS
3.3.1 Giới thiệu về Yahoo API
Yahoo Map API là thư viện miễn phí được cung cấp bởi Yahoo để hỗ trợ cho lập trình viên nhúng bản đồ vào ứng dụng website, desktop. Yahoo map được công ty Cartfact thiết kế và cung cấp dữ liệu. Yahoo map chính thức đi vào hoạt động vào ngày 16/05/2007. Yahoo cung cấp hình ảnh bản đồ dưới 3 dạng: Dạng hình ảnh vẽ, dạng hình ảnh vệ tinh, dạng hình ảnh kết hợp hình ảnh vẽ và vệ tinh
Hình 3-21 Hình ảnh vệ tinh kết hợp hình ảnh vẽ
Hình 3-22 Hình ảnh vẽ
Hình 3-23 Hỉnh ảnh vệ tinh
Từ lúc mới ra đời, dịch vụ chính mà API này cung cấp là dịch vụ về bản đồ đường và hướng dẫn đường đi ở Mỹ và Canada. Ngày nay API đã phát triển thêm một số tính năng đáng kể khác như:
Address Book: Cho phép người sử dụng có thể lưu một danh sách các con đường thường dựng để người dựng khụng cần gừ lại địa chỉ đường, chỉ cần gừ lại một số kí tự thì sẽ xuất hiện dưới drop down list.
Hình 3-24 Dịch vụ lưu trữ địa điểm trên Yahoo Map
Live Traffic: Cho phép người dùng xem mật độ giao thông trên con đường.
Hình 3-25 Real-time traffic trên Yahoo Map
Point of Interest Finder: Cho phép tìm kiếm các địa chỉ thông dụng gần vị trí hiện tại (nhà hang ở đâu?, ATM ở đâu? …), cũng như là thể hiện thông tin chi tiết: số điện thoại, hình ảnh về địa điểm đó.
Hình 3-26 Point Interest Finder
Driving Directions: Chỉ dẫn cho người đi đường để đi đến đích bằng các vẽ lên bản đồ hoặc hiển thị dạng text rồi gửi đến điện thoại di động.
Hình 3-27 Tìm đường dưới dạng thể hiện hình ảnh
Hình 3-28 Tìm đường thể hiện dưới dạng text
Ngoài các dịch vụ đó Yahoo Map còn cung cấp các API thông qua webservice để lập trình viên có thể sử dụng để triển khai các dịch vụ trên cho ứng dụng của mình. Yahoo
API cung cấp API dưới dạng các nền tảng ứng dụng Flash, Ajax, Hình ảnh cho bản đồ (Map Images).
a. AJAX API
Giới thiệu
Yahoo AJAX Maps API cho phép lập trình viên nhúng bản đồ vào website của họ sử dụng HTML và Javascript. Bản đồ được nhúng và các đoạn mã thực thi đều sử dụng Javascript. Các ứng dụng bản đồ được xây dựng dựa trên nền Yahoo Map AJAX đã được kiểm thử và chạy ổn định với các trình duyệt FireFox 2, IE 6 hoặc 7, Opera 9, Safari 3. Các trình duyệt mới hơn cũng được hỗ trợ.
Mỗi ứng dụng sử dụng Yahoo Map AJAX đều có một ID được đăng kí với Yahoo
Các chức năng được hỗ trợ
Hiển thị Yahoo Map trong ứng dụng web của mình: Mọi lớp API và các phương thức cần thiết để tương tác với Yahoo Map được tích hợp vào ứng dụng của bạn khi ứng dụng của bạn “add reference” đến thư viện Yahoo Map AJAX API.
Thêm các điều khiển vào bản đồ: Yahoo Map AJAX hỗ trợ và cung cấp cho chúng ta thêm các điều khiển vào bản đồ trên ứng dụng của mình. Các điều khiển phổ biến là: điều khiên PAN (kéo vùng nhìn bản đồ), ZOOM (phóng to thu nhỏ bản đồ), Map types (Thể hiện 3 dạng bản đồ: Hình ảnh vẽ, vệ tinh, kết hợp)
Sử dụng log: Yahoo Map API còn cung cấp thêm một tiện ích YLog cho bản đồ. YLog rất hữu ích cho việc bắt lỗi, và xem dữ liệu trong khi ứng dụng đang chạy
Đánh dấu vị trí: API hỗ trợ cho phép bạn đánh dấu một địa điểm nào đó trên bản đồ. Việc đánh dấu có thể là thêm hình ảnh, chú thích cho vị trí đó
Hiển thị thông tin giao thông trên bản đồ
Tìm kiếm vị trí
b. Flash API
Giới thiệu
Với thư viên hỗ trợ Flash và Flex 3 cho phép bạn nhúng bản đồ vào cả 2 loai ứng dụng: web và desktop. Việc sử dụng bản đồ dưới dạng Flash trong các dự án Flash, Flex, Ajax làm tăng khả năng linh hoạt của dự án.
Các chức năng được hỗ trợ
Với Yahoo Flash API cũng hỗ trợ các chức năng về định tuyến, tìm kiếm vị trí và các API về giao thông như thư viện Yahoo Ajax API.
c. Yahoo! Maps Web Services - Geocoding API
Giới thiệu
Geocoding Web Service cho phép bạn tìm kiếm chuyển đồi từ tọa độ longitude và latitude sang địa chỉ vật lý. Bạn có thể sử dụng để geocode để kết hợp với geocoding trong ứng dụng có sử dụng AJAX và Flash API.
• Địa chỉ WebService: http://local.yahooapis.com/MapsService/V1/geocode
• Tham số truyền vào Tham
số
Kiểu Mô tả
appid string (required)
Mã số của ứng dụng
city string Thành phố
state string Bang (Mỹ). Nếu ở nước khác thì trống
zip integer Mã Zipcode của đất nước
location Dạng tự do Địa chỉ cần truy vấn. Địa chỉ cần truy vấn được viết dưới dạng tự do, nhưng phải theo quy luật sau:
• Thành phố, bang
• Thành phố, bang, zipcode
• ZipCode
• Đường,Thành phố,Bang
• Đường,thành phố,Bang,Zipcode
• Đường, Zipcode
output string Xuất kết quả trả về theo dạng XML.