Chọn nền tảng: Android iOS

Định cấu hình thông tin gián đoạn theo thời gian thực

Thông tin gián đoạn 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ề những thông tin gián đoạn trên tuyến đường của họ và cho phép người dùng báo cáo cũng như xác minh những thông tin gián đoạn mà họ gặp phải. Ví dụ về thông tin gián đoạn bao gồm tai nạn xe cộ, 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, đóng làn đường và một số điều kiện thời tiết. Trang này giải thích các tính năng thông tin gián đoạn theo thời gian thực và các lựa chọn định cấu hình của chú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 thông tin gián đoạn theo thời gian thực

Navigation SDK bao gồm các tính năng thông tin gián đoạn theo thời gian thực sau đây như một phần của trải nghiệm điều hướng cốt lõi:

Các tính năng này có thể định cấu hình và được 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à lựa chọn định cấu hình hiện có.

Chú thích thông tin gián đoạn tương tác dọc theo tuyến đường

Khi một ứng dụng hiển thị tuyến đường, cho dù ở chế độ xem tổng quan về tuyến đường hay trong khi đi theo chỉ dẫn, mọi thông tin gián đoạn 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 thông tin gián đoạn.

Chú thích dọc theo tuyến đường

Bạn có thể kiểm soát việc hiển thị chú thích thông tin gián đoạn dọc theo tuyến đường bằng cách sử dụng setTrafficPromptsEnabled. Chế độ này cũng kiểm soát việc hiển thị cảnh báo tự động khi người dùng tiếp cận một thông tin gián đoạn.

// Using the SupportNavigationFragment
mNavFragment.setTrafficPromptsEnabled(true);

// Using the NavigationView
navigationView.setTrafficPromptsEnabled(true);

Hiển thị thông tin chi tiết về thông tin gián đoạn khi người dùng nhấn vào một 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ề thông tin gián đoạn, bao gồm loại thông tin gián đoạn, 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ình chọn xem thông tin gián đoạn có còn tồn tại hay không. Có 2 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 theo chỉ dẫn hay không và các lựa chọn định cấu hình sẽ khác nhau đối với từng loại.

Thẻ thông tin chú thích trên chế độ xem tổng quan về tuyến đường, trước khi bắt đầu đi theo chỉ dẫn

Khi người dùng nhấn vào một chú thích trên chế độ xem tổng quan về tuyến đường, trước khi bắt đầu đi theo chỉ dẫn, một thẻ thông tin sẽ xuất hiện với nhiều thông tin hơn về thông tin gián đoạn.

Thẻ thông tin tổng quan

Bạn có thể kiểm soát khả năng người dùng nhấn vào chú thích thông tin gián đoạn trên chế độ xem 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 đi theo chỉ dẫn

Khi một chú thích thông tin gián đoạn xuất hiện dọc theo tuyến đường trong khi đi theo chỉ dẫn, người dùng có thể nhấn vào chú thích đó để hiển thị thẻ thông tin có thêm thông tin về thông tin gián đoạn, bao gồm loại thông tin gián đoạn và thời gian báo cáo gần đây nhất, cũng như các nút để bình chọn xem thông tin gián đoạn có còn tồn tại hay không. Phiếu bình chọn do 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 Google Maps và người dùng Navigation SDK khác, cũng như được dùng để xác định xem có nên tiếp tục hiển thị thông tin gián đoạn hay không.

Thẻ thông tin về chế độ chỉ đường đang hoạt động

Bạn có thể kiểm soát việc hiển thị và khả năng nhấn vào chú thích thông tin gián đoạn trong khi đi theo chỉ dẫn bằng cách sử dụng setTrafficPromptsEnabled . Chế độ này cũng kiểm soát việc hiển thị chú thích dọc theo tuyến đường và việc hiển thị cảnh báo tự động khi người dùng tiếp cận một thông tin gián đoạn.

// Using the SupportNavigationFragment
mNavFragment.setTrafficPromptsEnabled(true);

// Using the NavigationView
navigationView.setTrafficPromptsEnabled(true);

Cảnh báo thông tin gián đoạn tự động có tính năng bình chọn trong khi đi theo chỉ dẫn

Trong khi đi theo chỉ dẫn, khi người dùng tiếp cận một thông tin gián đoạn dọc theo tuyến đường, một lời nhắc sẽ xuất hiện kèm theo thông tin về thông tin gián đoạn và các nút để bình chọn xem thông tin gián đoạn có còn tồn tại hay không. Phiếu bình chọn do 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 Google Maps và Navigation SDK khác, cũng như được dùng để xác định xem có nên tiếp tục hiển thị thông tin gián đoạn hay không.

Thẻ thông tin về chế độ chỉ đường đang hoạt động

Bạn có thể định cấu hình việc hiển thị lời nhắc cảnh báo trong khi đi theo chỉ dẫn bằng cách sử dụng setTrafficPromptsEnabled . Chế độ này cũng kiểm soát việc 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 thông tin gián đoạn trong khi đi theo chỉ dẫn

Trong chế độ thao tác, một nút sẽ xuất hiện trên giao diện người dùng điều hướng, cho phép người dùng báo cáo thông tin gián đoạn mới dọc theo 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 thông tin gián đoạn có thể báo cáo sẽ xuất hiện. 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 Google Maps và Navigation SDK khác.

Nút báo cáo Trình đơn báo cáo

Hiện hoặc ẩn nút báo cáo tiêu chuẩn

Bạn có thể định cấu hình khả năng hiển thị của nút báo cáo tiêu chuẩn trong khi đi theo chỉ dẫn 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);

Thêm nút báo cáo tuỳ chỉnh

Thay vì nút báo cáo thông tin gián đoạn tiêu chuẩn, bạn có thể thêm nút báo cáo tuỳ chỉnh vào giao diện người dùng điều hướng. Khi người dùng nhấp vào nút tuỳ chỉnh, bạn có thể kích hoạt việc hiển thị trình đơn báo cáo bằng cách gọi phương thức showReportIncidentsPanel. Trước khi thêm nút báo cáo tuỳ chỉnh, hãy xác minh rằng ứng dụng đang ở chế độ đi theo chỉ dẫn và người dùng đang ở một quốc gia có bật tính năng báo cáo bằng cách gọi isIncidentReportingAvailable. Nếu một trong hai điều kiện này không đúng, thì trình đơn báo cáo sẽ không xuất hiện.

  Button customReportIncidentButton = findViewById(R.id.custom_reporting_button);
  
  // Check if reporting is available before displaying your button
  customReportIncidentButton.setVisibility(
      navigationView.isReportingAvailable ? View.VISIBLE : View.GONE);
  
  // Trigger the reporting flow if the button is clicked
  customReportIncidentButton.setOnClickListener(v ->
      navigationView.showReportIncidentsPanel());
  

Thao tá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 Navigation SDK của bạn bao gồm các phần tử giao diện người dùng tuỳ chỉnh, bạn cần cân nhắc các phần tử thông tin 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 thông tin gián đoạn được đặt ở góc dưới cùng/góc cuối của bản đồ – ở bên phải đối với ngôn ngữ viết từ trái sang phải và bên trái đối với 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 phần tử trên giao diện người dùng tuỳ chỉnh, hãy thêm một chế độ điều khiển tuỳ chỉnh BOTTOM_END_BELOW hoặc FOOTER. Chế độ 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 Navigation SDK hiển thị đều được xếp lớp đúng cách trên các phần tử giao diện người dùng tuỳ chỉnh của bạn trong khi hiển thị. Nếu không thể sử dụng các chế độ điều khiển tuỳ chỉnh, hãy sử dụng API Hiển thị lời nhắc để quản lý các xung đột tiềm ẩn về giao diện người dùng.

API Hiển thị lời nhắc (Thử nghiệm)

API Hiển thị lời nhắc giúp bạn tránh xung đột giữa các phần tử trên giao diện người dùng do Navigation SDK tạo và các phần tử trên giao diện người dùng tuỳ chỉnh của riêng bạn bằng cách thêm một trình nghe để nhận lệnh gọi lại trước khi một phần tử trên giao diện người dùng Navigation SDK sắp xuất hiện và ngay khi phần tử đó bị xoá. Bạn có thể nhận lệnh gọi lại cho các phần tử thông tin gián đoạn theo thời gian thực, bao gồm thẻ thông tin, lời nhắc và trình đơn báo cáo thông tin gián đoạn, cũng như cho các thông báo khác do Navigation SDK 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)