Kiểu bản đồ mới sắp xuất hiện trên Nền tảng Google Maps. Bản cập nhật này để tạo kiểu bản đồ bao gồm một bảng màu mặc định mới và các cải tiến về trải nghiệm bản đồ cũng như khả năng hữu dụng. Tất cả kiểu bản đồ sẽ được cập nhật tự động vào tháng 3 năm 2025. Để biết thêm thông tin về phạm vi cung cấp và cách chọn tham gia sớm hơn, hãy xem bài viết Kiểu bản đồ mới cho Nền tảng Google Maps.
Bạn đang tìm những tính năng nâng cao để thêm vào bản đồ của mình? Thư viện tiện ích SDK Bản đồ dành cho Android là một thư viện nguồn mở gồm các lớp hữu ích cho nhiều ứng dụng. Kho lưu trữ GitHub bao gồm các lớp tiện ích và một ứng dụng minh hoạ cách sử dụng từng lớp.
Trong video này, Chris Broadfoot thảo luận về thư viện tiện ích, tập trung vào việc giải mã đường đa tuyến, hình học hình cầu và biểu tượng bong bóng trò chuyện.
Thiết lập nhanh
Để cài đặt SDK Bản đồ cho Thư viện tiện ích Android, hãy làm theo hướng dẫn thiết lập.
Các tiện ích
Nhập GeoJSON vào bản đồ
Bạn có thể lưu trữ các đối tượng trong định dạng GeoJSON và sử dụng tiện ích này để hiển thị các đối tượng đó dưới dạng một lớp trên bản đồ.
Gọi addLayer() để thêm dữ liệu GeoJSON vào bản đồ.
Bạn cũng có thể thêm từng tính năng riêng lẻ bằng cách gọi addFeature(), truyền vào một đối tượng GeoJsonFeature.
Khi sử dụng tiện ích này, bạn có thể chuyển đổi các đối tượng KML thành hình dạng địa lý và hiển thị các đối tượng đó dưới dạng một lớp trên đầu bản đồ. Gọi addLayerToMap() để thêm lớp vào bản đồ. Bạn có thể truy cập vào các thuộc tính trong đối tượng KML bằng cách gọi getProperties() trên bất kỳ Placemark, GroundOverlay, Document hoặc Folder nào.
Bản đồ nhiệt giúp người xem dễ dàng hiểu được mức độ phân phối và cường độ tương đối của các điểm dữ liệu trên bản đồ. Thay vì đặt điểm đánh dấu tại mỗi vị trí, bản đồ nhiệt sử dụng màu sắc và hình dạng để thể hiện mức phân phối dữ liệu. Tạo một HeatmapTileProvider, truyền vào đó một tập hợp các đối tượng LatLng đại diện cho các điểm yêu thích trên bản đồ. Sau đó, hãy tạo một TileOverlay mới, truyền trình cung cấp thẻ thông tin nhiệt vào đó và thêm lớp phủ thẻ thông tin vào bản đồ.
Tuỳ chỉnh điểm đánh dấu thông qua biểu tượng bong bóng trò chuyện
Thêm IconGenerator để hiển thị các đoạn thông tin trên điểm đánh dấu. Tiện ích này cung cấp một cách để làm cho các biểu tượng điểm đánh dấu trông giống như cửa sổ thông tin, trong đó chính điểm đánh dấu có thể chứa văn bản và nội dung khác. Ưu điểm là bạn có thể mở nhiều điểm đánh dấu cùng một lúc, trong khi chỉ có thể mở một cửa sổ thông tin cùng một lúc.
Bạn cũng có thể tạo kiểu cho điểm đánh dấu, thay đổi hướng của điểm đánh dấu và/hoặc nội dung, cũng như thay đổi hình nền/9-patch của điểm đánh dấu.
Quản lý cụm điểm đánh dấu
ClusterManager giúp bạn quản lý nhiều điểm đánh dấu ở nhiều cấp độ thu phóng. Điều này có nghĩa là bạn có thể đặt một số lượng lớn điểm đánh dấu trên bản đồ mà không làm cho bản đồ khó đọc. Khi người dùng xem bản đồ ở mức thu phóng cao, các điểm đánh dấu riêng lẻ sẽ xuất hiện trên bản đồ. Khi người dùng thu nhỏ đến mức thu nhỏ thấp hơn, các điểm đánh dấu sẽ tập hợp lại thành các cụm để giúp xem bản đồ dễ dàng hơn.
Bạn có thể hiển thị các đối tượng từ GeoJSON, KML và cụm — cũng như các điểm đánh dấu, đa tuyến và đa giác của riêng mình — tất cả trên cùng một bản đồ. Bạn cũng có thể tạo khả năng tương tác cho các lớp này bằng cách thêm trình nghe lượt nhấp vào từng lớp.
Bạn chỉ cần tạo bản sao cho các lớp MarkerManager, GroundOverlayManager, PolygonManager và PolylineManager rồi truyền các lớp đó vào hàm khởi tạo của GeoJsonLayer, KmlLayer, ClusterManager khi thiết lập các lớp đó. Sau đó, bạn có thể trực tiếp sử dụng các lớp Manager ở trên để thêm các điểm đánh dấu, đa tuyến và đa giác của riêng mình vào bản đồ.
Để biết thông tin chi tiết, hãy xem tài liệu về Bản minh hoạ nhiều lớp của Google Maps trên Android.
Mã hoá và giải mã hình nhiều đường
PolyUtil hữu ích cho việc chuyển đổi các đa tuyến và đa giác được mã hoá thành toạ độ vĩ độ/kinh độ và ngược lại.
Trong Google Maps, toạ độ vĩ độ và kinh độ xác định một đa tuyến hoặc đa giác được lưu trữ dưới dạng một chuỗi được mã hoá. Xem nội dung giải thích chi tiết về mã hoá đường đa tuyến. Bạn có thể nhận được chuỗi đã mã hoá này trong phản hồi từ một API của Google, chẳng hạn như API Chỉ đường (Cũ).
Bạn có thể sử dụng PolyUtil trong Thư viện tiện ích SDK Maps cho Android để mã hoá một chuỗi tọa độ vĩ độ/kinh độ ("LatLngs") thành một chuỗi đường dẫn đã mã hoá và để giải mã một chuỗi đường dẫn đã mã hoá thành một chuỗi LatLngs. Điều này sẽ đảm bảo khả năng tương tác với các dịch vụ web của API Google Maps.
Tính khoảng cách, diện tích và tiêu đề thông qua hình học hình cầu
Bằng cách sử dụng các tiện ích hình học hình cầu trong SphericalUtil, bạn có thể tính toán khoảng cách, diện tích và hướng dựa trên vĩ độ và kinh độ. Sau đây là một số phương thức có trong tiện ích:
computeDistanceBetween() – Trả về khoảng cách, tính bằng mét, giữa hai toạ độ vĩ độ/kinh độ.
computeHeading() – Trả về góc phương vị, tính theo độ, giữa hai toạ độ vĩ độ/kinh độ.
computeArea() – Trả về diện tích (tính bằng mét vuông) của một đường dẫn kín trên Trái Đất.
interpolate() – Trả về toạ độ vĩ độ/kinh độ của một điểm nằm ở một phần nhất định của khoảng cách giữa hai điểm đã cho. Ví dụ: bạn có thể sử dụng tính năng này để tạo hiệu ứng động cho một điểm đánh dấu giữa hai điểm.
Hãy tham khảo tài liệu tham khảo để biết danh sách đầy đủ các phương thức trong tiện ích này.
Kiểm tra xem một vị trí có được hỗ trợ trong Chế độ xem đường phố hay không.
Lớp StreetViewUtil cung cấp chức năng để kiểm tra xem một vị trí có được hỗ trợ trong Chế độ xem đường phố hay không. Bạn có thể tránh lỗi khi thêm ảnh toàn cảnh Chế độ xem đường phố vào ứng dụng Android bằng cách gọi tiện ích siêu dữ liệu này và chỉ thêm ảnh toàn cảnh Chế độ xem đường phố nếu phản hồi là OK.
[[["Dễ hiểu","easyToUnderstand","thumb-up"],["Giúp tôi giải quyết được vấn đề","solvedMyProblem","thumb-up"],["Khác","otherUp","thumb-up"]],[["Thiếu thông tin tôi cần","missingTheInformationINeed","thumb-down"],["Quá phức tạp/quá nhiều bước","tooComplicatedTooManySteps","thumb-down"],["Đã lỗi thời","outOfDate","thumb-down"],["Vấn đề về bản dịch","translationIssue","thumb-down"],["Vấn đề về mẫu/mã","samplesCodeIssue","thumb-down"],["Khác","otherDown","thumb-down"]],["Cập nhật lần gần đây nhất: 2025-03-13 UTC."],[[["The Maps SDK for Android Utility Library is an open-source library offering advanced features for enhancing Google Maps in Android applications."],["It provides utilities for importing GeoJSON and KML data, adding heatmaps, clustering markers, managing multiple map layers, and working with polylines."],["The library includes features for customizing markers with bubble icons and performing spherical geometry calculations for distances, areas, and headings."],["Developers can quickly set up the library by following the provided setup guide and access detailed documentation for each utility."],["A demo app is included in the GitHub repository showcasing the usage of the various classes and functionalities within the library."]]],["The Maps SDK for Android Utility Library offers tools for enhancing map functionality. Key actions include importing GeoJSON and KML data, adding heatmaps, managing marker clusters, and customizing markers with bubble icons. It supports adding multiple layers, and it also allows users to encode/decode polylines and utilize spherical geometry for distance, area, and heading calculations. Additionally, users can check if a location is supported in street view. All utilities are open-source, and can be viewed with the provided demo app.\n"]]