Định cấu hình các sự cố gián đoạn theo thời gian thực
Sự cố theo thời gian thực là một tập hợp các tính năng cảnh báo người dùng về sự cố trên tuyến đường của họ, đồng thời cho phép người dùng báo cáo và xác minh sự cố mà họ gặp phải. Ví dụ về các sự cố gây gián đoạn bao gồm tai nạn xe cộ, tình trạng tắc nghẽn giao thông, sự hiện diện của cảnh sát và camera bắn tốc độ, công trình xây dựng, làn đường bị đóng và một số điều kiện thời tiết nhất định. Trang này giải thích các tính năng gián đoạn theo thời gian thực và các tuỳ chọn cấu hình của các tính năng đó, bao gồm cả những điều cần cân nhắc đối với các ứng dụng sử dụng giao diện người dùng điều hướng tuỳ chỉnh.
Các tính năng về sự cố theo thời gian thực
Navigation SDK bao gồm các tính năng gián đoạn theo thời gian thực sau đây trong trải nghiệm điều hướng cốt lõi:- Chú thích tương tác về sự cố trên các tuyến đường.
- Cảnh báo tự động về sự cố với tính năng bỏ phiếu trong khi chỉ đường.
- Báo cáo sự cố gián đoạn trong khi đang chỉ đường.
Các tính năng này có thể được định cấu hình và bật theo mặc định. Các phần sau đây cung cấp thêm thông tin về các tính năng và tuỳ chọn cấu hình có sẵn.
Chú thích tương tác về sự cố trên tuyến đường
Khi một ứng dụng hiển thị một tuyến đường, trong phần tổng quan về tuyến đường hoặc trong khi điều hướng đang hoạt động, mọi sự cố hiện tại sẽ xuất hiện dưới dạng chú thích dọc theo tuyến đường. Chú thích bao gồm một biểu tượng cho biết loại sự cố.

Bạn có thể kiểm soát việc hiển thị chú thích về sự cố trên các tuyến đường bằng cách sử dụng setTrafficPromptsEnabled
. Phương thức này cũng kiểm soát việc hiển thị cảnh báo tự động khi người dùng đến gần một sự cố.
// Using the SupportNavigationFragment mNavFragment.setTrafficPromptsEnabled(true); // Using the NavigationView navigationView.setTrafficPromptsEnabled(true);
Hiển thị thông tin chi tiết về sự cố khi người dùng nhấn vào chú thích
Người dùng có thể nhấn vào một chú thích để hiển thị thẻ thông tin có thêm thông tin về sự cố, bao gồm cả loại sự cố, thời gian báo cáo gần đây nhất và trong một số trường hợp, có lựa chọn bỏ phiếu về việc sự cố có còn xảy ra hay không. Có hai loại thẻ thông tin có thể xuất hiện, tuỳ thuộc vào việc người dùng có đang điều hướng hay không và các tuỳ chọn cấu hình sẽ khác nhau tuỳ theo loại.
Thẻ thông tin chú thích trên thông tin tổng quan về tuyến đường, trước khi bắt đầu chỉ đường đang hoạt động
Khi người dùng nhấn vào chú thích trên thông tin tổng quan về tuyến đường, trước khi bắt đầu chỉ đường, một thẻ thông tin sẽ xuất hiện với thêm thông tin về sự cố.

Bạn có thể kiểm soát khả năng người dùng nhấn vào chú thích về sự cố trên thông tin tổng quan về tuyến đường để hiển thị thêm thông tin bằng cách sử dụng setTrafficIncidentCardsEnabled
.
// Using the SupportNavigationFragment mNavFragment.setTrafficIncidentCardsEnabled(true); // Using the NavigationView navigationView.setTrafficIncidentCardsEnabled(true);
Thẻ thông tin chú thích trong khi chỉ đường
Khi một chú thích về sự cố xuất hiện dọc theo một tuyến đường trong khi người dùng đang di chuyển, họ có thể nhấn vào chú thích đó để hiển thị một thẻ thông tin có thêm thông tin về sự cố, bao gồm cả loại sự cố và thời điểm báo cáo sự cố gần đây nhất, cũng như các nút để bỏ phiếu về việc sự cố đó có còn xảy ra hay không. Google sẽ xử lý các phiếu bầu do người dùng gửi và có thể hiển thị trên bản đồ cho người dùng Google Maps và người dùng SDK Điều hướng khác, cũng như dùng để xác định xem có tiếp tục hiển thị sự cố hay không.

Bạn có thể kiểm soát chế độ hiển thị và khả năng nhấn vào chú thích về sự cố trong quá trình điều hướng đang hoạt động bằng cách sử dụng setTrafficPromptsEnabled
. Thao tác này cũng kiểm soát chế độ hiển thị chú thích dọc theo tuyến đường và chế độ hiển thị cảnh báo tự động khi người dùng đến gần một sự cố.
// Using the SupportNavigationFragment mNavFragment.setTrafficPromptsEnabled(true); // Using the NavigationView navigationView.setTrafficPromptsEnabled(true);
Thông báo tự động về sự cố với tính năng bỏ phiếu trong khi chỉ đường
Trong quá trình chỉ đường chủ động, khi người dùng đến gần một sự cố trên một tuyến đường, một lời nhắc sẽ xuất hiện cùng với thông tin về sự cố và các nút để bỏ phiếu về việc sự cố đó có còn tồn tại hay không. Google sẽ xử lý các phiếu bầu do người dùng gửi và có thể hiển thị trên bản đồ cho những người dùng khác của Google Maps và SDK chỉ đường, cũng như dùng để xác định xem có tiếp tục hiển thị sự cố hay không.

Bạn có thể định cấu hình chế độ hiển thị lời nhắc cảnh báo trong khi chỉ đường bằng cách sử dụng setTrafficPromptsEnabled
. Lớp này cũng kiểm soát chế độ hiển thị chú thích dọc theo tuyến đường.
// Using the SupportNavigationFragment mNavFragment.setTrafficPromptsEnabled(true); // Using the NavigationView navigationView.setTrafficPromptsEnabled(true);
Báo cáo sự cố trong khi đang chỉ đường
Trong chế độ chỉ đường đang hoạt động, một nút sẽ xuất hiện trên giao diện người dùng chỉ đường để cho phép người dùng báo cáo các sự cố mới trên tuyến đường của họ. Khi người dùng nhấn vào nút này, một trình đơn có các loại sự cố có thể báo cáo sẽ xuất hiện. Các báo cáo mà người dùng gửi sẽ được Google xử lý và có thể xuất hiện trên bản đồ cho những người dùng khác của Google Maps và SDK Điều hướng.


Bạn có thể định cấu hình chế độ hiển thị của nút báo cáo trong quá trình điều hướng đang hoạt động bằng cách sử dụng setReportIncidentButtonEnabled
.
// Enables the incident reporting button to show in situations where incident // reporting is possible. // Using the SupportNavigationFragment mNavFragment.setReportIncidentButtonEnabled(true); // Using the NavigationView navigationView.setReportIncidentButtonEnabled(true);
Làm việc với giao diện người dùng điều hướng tuỳ chỉnh
Nếu quá trình triển khai SDK điều hướng của bạn bao gồm các thành phần giao diện người dùng tuỳ chỉnh, bạn cần cân nhắc các thành phần gây gián đoạn theo thời gian thực để tránh xung đột.
Vị trí nút báo cáo
Theo mặc định, nút báo cáo sự cố nằm ở cuối/góc sau cùng của bản đồ – ở bên phải đối với các ngôn ngữ viết từ trái sang phải và ở bên trái đối với các ngôn ngữ viết từ phải sang trái. Nếu bạn cần di chuyển nút báo cáo để tạo không gian cho các thành phần giao diện người dùng tuỳ chỉnh, hãy thêm một thành phần điều khiển tuỳ chỉnhBOTTOM_END_BELOW
hoặc FOOTER
. Thao tác này sẽ đẩy vị trí của nút lên trên màn hình. Việc đặt giao diện người dùng tuỳ chỉnh của riêng bạn trong các chế độ điều khiển tuỳ chỉnh cũng đảm bảo rằng mọi lời nhắc do SDK Điều hướng hiển thị đều được xếp lớp đúng cách trên các thành phần giao diện người dùng tuỳ chỉnh trong khi hiển thị. Nếu bạn không thể sử dụng các chế độ điều khiển tuỳ chỉnh, hãy sử dụng Prompt Visibility API (API Hiển thị lời nhắc) để quản lý các xung đột có thể xảy ra trên giao diện người dùng.
Prompt Visibility API (Thử nghiệm)
API Hiển thị lời nhắc giúp bạn tránh xung đột giữa các thành phần giao diện người dùng do SDK Điều hướng tạo ra và các thành phần giao diện người dùng tuỳ chỉnh của riêng bạn bằng cách thêm trình nghe để nhận lệnh gọi lại trước khi một thành phần giao diện người dùng SDK Điều hướng sắp xuất hiện và ngay khi thành phần đó bị xoá. Bạn có thể nhận được lệnh gọi lại cho các phần tử gián đoạn theo thời gian thực, bao gồm cả thẻ thông tin, lời nhắc và trình đơn báo cáo gián đoạn, cũng như các thông báo khác do SDK Điều hướng tạo.// Sample listener val listener: PromptVisibilityChangedListener = { isVisible -> if (isVisible) { customFab.visibility = false customFooter.visibility = false moveSomeOtherThingsAround() } else { customFab.visibility = true customFooter.visibility = true moveSomeThingsBackToWhereTheyWereBefore() } } // Inside onCreate() navigationView.addPromptVisibilityChangedListener(listener) // Inside onDestroy() navigationView.removePromptVisibilityChangedListener(listener)