Chế độ Lite

SDK bản đồ dành cho Android có thể phân phát hình ảnh bitmap của bản đồ, cung cấp khả năng tương tác hạn chế cho người dùng. Đây được gọi là bản đồ chế độ thu gọn.

Mã mẫu

Kho lưu trữ Apidemos trên GitHub bao gồm các mẫu minh hoạ việc sử dụng chế độ thu gọn:

Tổng quan về chế độ thu gọn

Bản đồ ở chế độ thu gọn là hình ảnh bitmap của bản đồ tại một vị trí và mức thu phóng được chỉ định. Chế độ thu gọn hỗ trợ tất cả các loại bản đồ (thông thường, kết hợp, vệ tinh, địa hình) và một nhóm nhỏ chức năng do API đầy đủ cung cấp. Chế độ thu gọn sẽ hữu ích khi bạn muốn cung cấp một số lượng bản đồ trong một luồng hoặc một bản đồ quá nhỏ nên không hỗ trợ được lượt tương tác có ý nghĩa.

Người dùng xem bản đồ không thể thu phóng hoặc xoay bản đồ. Các biểu tượng trên bản đồ cho phép người dùng xem bản đồ trong ứng dụng di động Google Maps và yêu cầu chỉ đường.

Thêm bản đồ chế độ thu gọn

Chế độ thu gọn sử dụng các lớp và giao diện giống như API Android đầy đủ của Google Maps. Bạn có thể đặt GoogleMap thành chế độ thu gọn theo các cách sau:

  • Ở dạng thuộc tính XML cho MapView hoặc MapFragment
  • Hoặc trong đối tượng GoogleMapOptions

Dưới dạng thuộc tính XML cho MapView hoặc MapFragment

<fragment xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:map="http://schemas.android.com/apk/res-auto"
    android:name="com.google.android.gms.maps.MapFragment"
    android:id="@+id/map"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    map:cameraZoom="13"
    map:mapType="normal"
    map:liteMode="true"/>

Trong đối tượng GoogleMapOptions

Kotlin



val options = GoogleMapOptions()
    .liteMode(true)

      

Java


GoogleMapOptions options = new GoogleMapOptions()
    .liteMode(true);

      

Để biết thông tin chi tiết về cách thiết lập trạng thái ban đầu của bản đồ, hãy xem hướng dẫn về đối tượng bản đồ.

Ý định khởi chạy chế độ xem bản đồ hoặc yêu cầu chỉ đường

Theo mặc định, một thanh công cụ ở dưới cùng bên phải bản đồ chứa các biểu tượng cho phép truy cập vào chế độ xem bản đồ hoặc yêu cầu chỉ đường trong ứng dụng di động Google Maps. Bạn có thể tắt thanh công cụ bằng cách gọi UiSettings.setMapToolbarEnabled(false). Để biết thêm thông tin chi tiết, hãy xem tài liệu trên thanh công cụ.

Ngoài ra, theo mặc định, khi người dùng nhấn vào bản đồ, API sẽ khởi động ứng dụng di động Google Maps. Bạn có thể ghi đè giá trị này bằng cách sử dụng GoogleMap.setOnMapClickListener() để đặt trình nghe của riêng mình. Bạn cũng có thể tắt các sự kiện nhấp chuột trên bản đồ bằng cách gọi setClickable() trên khung hiển thị chứa MapView hoặc MapFragment. Để biết thông tin chi tiết về 2 kỹ thuật này, vui lòng xem tài liệu về sự kiện.

Các sự kiện trong vòng đời

Khi sử dụng API ở chế độ tương tác hoàn toàn, người dùng lớp MapView phải chuyển tiếp tất cả phương thức trong vòng đời hoạt động đến các phương thức tương ứng trong lớp MapView. Ví dụ về các phương thức vòng đời bao gồm onCreate(), onDestroy(), onResume()onPause().

Khi sử dụng lớp MapViewchế độ thu gọn, bạn không bắt buộc phải chuyển tiếp các sự kiện trong vòng đời, ngoại trừ các trường hợp sau:

  • Bắt buộc phải gọi onCreate(), nếu không sẽ không có bản đồ nào xuất hiện.
  • Nếu bạn muốn hiển thị dấu chấm Vị trí của tôi trên bản đồ chế độ thu gọn và sử dụng nguồn vị trí mặc định, bạn cần gọi onResume()onPause(), vì nguồn vị trí sẽ chỉ cập nhật giữa các lệnh gọi này. Nếu sử dụng nguồn vị trí của riêng mình, bạn không cần phải gọi 2 phương thức này.

Các tính năng API được hỗ trợ

Bảng sau đây mô tả hành vi của bản đồ chế độ thu gọn cho từng khu vực của chức năng API. Nếu một ứng dụng gọi một phương thức không được hỗ trợ ở chế độ thu gọn, thì API sẽ ghi lại một thông báo cảnh báo.

Chức năng
Loại bản đồ
Được hỗ trợ?
Bạn có thể sử dụng các loại bản đồ sau đây thông qua GoogleMapOptions.mapType()GoogleMap.setMapType(): MAP_TYPE_NORMAL, MAP_TYPE_SATELLITE, MAP_TYPE_TERRAIN, MAP_TYPE_HYBRID, MAP_TYPE_NONE
Hình nhiều đường, đa giác, hình tròn
Được hỗ trợ?
Chức năng chế độ thu gọn cho hình dạng khớp với API đầy đủ.
Dự kiến
Được hỗ trợ?
Chức năng của chế độ thu gọn cho Projection (Chiếu) khớp với toàn bộ API.
Vị trí của tôi
Được hỗ trợ?
Chức năng chế độ thu gọn cho Lớp Vị trí của tôi khớp với API đầy đủ.
Khoảng đệm bản đồ
Được hỗ trợ?
Hỗ trợ chế độ thu gọn cho khoảng đệm bản đồ khớp với API đầy đủ.
Cửa sổ thông tin
Được hỗ trợ?
Nếu bạn đặt title() của một điểm đánh dấu, thì cửa sổ thông tin mặc định sẽ xuất hiện khi người dùng nhấn vào điểm đánh dấu. Bạn có thể hiển thị cửa sổ thông tin theo phương thức lập trình bằng cách gọi showInfoWindow() trên điểm đánh dấu. Bạn cũng có thể tạo cửa sổ thông tin tuỳ chỉnh thông qua giao diện InfoWindowAdapter.
Kiểu bản đồ cơ sở tuỳ chỉnh
Được hỗ trợ? Một phần
SDK Maps dành cho Android hỗ trợ kiểu tuỳ chỉnh của bản đồ cơ sở. Chế độ Lite chỉ hỗ trợ định kiểu tuỳ chỉnh dựa trên JSON, chứ không hỗ trợ định kiểu trên đám mây (yêu cầu mã nhận dạng bản đồ để hiển thị bản đồ được tạo kiểu).
Đánh dấu
Được hỗ trợ? Một phần
Bạn có thể thêm một điểm đánh dấu và phản hồi một sự kiện nhấp chuột. Bạn cũng có thể thêm biểu tượng điểm đánh dấu tuỳ chỉnh. Không thể làm cho điểm đánh dấu có thể kéo được. Các điểm đánh dấu trên bản đồ chế độ thu gọn là phẳng và không thể xoay được.
Vị trí, tính năng thu phóng và ảnh động của máy ảnh
Được hỗ trợ? Một phần

Bạn có thể đặt mục tiêu và mức thu phóng của máy ảnh nhưng không thể đặt độ nghiêng hoặc góc phương vị. Mức thu phóng được làm tròn đến số nguyên gần nhất ở chế độ thu gọn. Việc gọi GoogleMap.moveCamera() sẽ cung cấp cho bạn một hình ảnh bản đồ chế độ thu gọn khác. Để biết thêm thông tin về cách thiết lập và thao tác với máy ảnh, hãy xem phần Thay đổi khung hiển thị.

Việc gọi GoogleMap.animateCamera() sẽ không dẫn đến ảnh động của chuyển động của camera. Chế độ xem camera sẽ di chuyển ngay lập tức sang vị trí mới.

Ánh xạ các sự kiện
Được hỗ trợ? Một phần

Chế độ thu gọn hỗ trợ GoogleMap.setOnMapClickListener()GoogleMap.setOnMapLongClickListener().

Để tắt các sự kiện nhấp chuột trên bản đồ ở chế độ thu gọn, bạn có thể gọi setClickable() trên khung hiển thị chứa MapView hoặc MapFragment. Điều này rất hữu ích, chẳng hạn như khi hiển thị một bản đồ hoặc các bản đồ trong chế độ xem danh sách mà bạn muốn sự kiện nhấp chuột gọi ra một hành động không liên quan đến bản đồ.

Để biết thông tin chi tiết, hãy xem tài liệu về sự kiện.

Bản đồ và toà nhà trong nhà
Được hỗ trợ? Không
Chế độ thu gọn sẽ hiển thị các thẻ thông tin giống như API Tĩnh của Maps. Điều này có nghĩa là nếu sơ đồ tầng trong nhà được đưa vào thẻ thông tin mặc định, thì sơ đồ đó sẽ xuất hiện. Nếu không, tính năng này sẽ không hoạt động. Ngoài ra, bạn không thể thay đổi cấp được hiển thị hoặc thao tác trên bộ chọn cấp độ.
Lớp giao thông
Được hỗ trợ? Không
GoogleMap.setTrafficEnabled() không được hỗ trợ ở chế độ thu gọn.
Lớp phủ mặt đất
Được hỗ trợ? Không
GoogleMap.addGroundOverlay() không được hỗ trợ ở chế độ thu gọn.
Lớp phủ ô
Được hỗ trợ? Không
GoogleMap.addTileOverlay() không được hỗ trợ ở chế độ thu gọn.
Cử chỉ
Được hỗ trợ? Không
Chế độ thu gọn không hỗ trợ cử chỉ. Việc bật và tắt cử chỉ sẽ không có hiệu lực.
Chế độ xem đường phố
Được hỗ trợ? Không
Chế độ xem đường phố không được hỗ trợ ở chế độ thu gọn.