建立以進度為主軸的通知

頂端通知欄進度中心通知
圖 1. 通知中心頂端會顯示以進度為主的通知。

Android 16 推出新的通知範本,可協助使用者順暢追蹤使用者發起的端對端歷程。這類通知在系統介面上的能見度較高,且在通知導覽匣中會優先顯示。

使用 Notification.ProgressStyle 設定以進度為主的通知樣式。主要用途包括共乘、外送和導航。在該類別中,您可以使用 Points 和 Segments 標示使用者歷程中的狀態和里程碑。

相關課程

下列類別包含用於建構 ProgressStyle 通知的不同 API:

剖析與自訂

下圖顯示組成ProgressStyle通知的不同部分:

圖 2.

A. 標題 - 副標題

Notification.Builder#setSubText()

B. 標頭 - 時間

Notification.Builder#setWhen()

C. 內容標題

Notification.Builder#setContentTitle()

D. 內容文字

Notification.Builder#setContentText()

E. 進度列

Notification.ProgressStyle

F. 動作按鈕

Notification.Builder#addAction()

圖 3. 應用程式可以為追蹤器圖示設定車輛圖片,並使用區隔和點來表示共乘體驗和里程碑。

最佳做法

使用正確的 API 並遵循最佳做法,為進度更新提供最佳使用者體驗。

  • 設定正確的欄位,確保通知欄中顯示的內容符合宣傳需求。
  • 使用適當的視覺元素引導使用者。舉例來說,叫車應用程式應設定車輛圖片,並使用 Notification#setLargeIcon 在通知中顯示最準確的車輛顏色。
  • 使用簡潔明瞭的語言定義使用者歷程的進度。抵達時間、駕駛人姓名和行程狀態是通知應傳達的重要文字。
  • 在通知中提供實用且相關的動作,簡化使用者歷程。舉例來說,在剛開始的送餐訂單中提供「小費」和「加點」等動作,對送餐前的使用者很有幫助。
  • 使用區隔表示狀態。舉例來說,路段可以根據共乘行程中的交通狀況和時間長度著色。點數代表里程碑的狀態,例如備餐、外送和乘客上車。
  • 更新進度體驗,準確反映旅程的實際進展。舉例來說,路況變化會反映在路段顏色變化和文字更新中。

下列程式碼片段顯示如何將 ProgressStyle 通知用於共乘情境:

var ps =
    Notification.ProgressStyle()
        .setStyledByProgress(false)
        .setProgress(456)
        .setProgressTrackerIcon(Icon.createWithResource(appContext, R.drawable.ic_car_red))
        .setProgressSegments(
            listOf(
                Notification.ProgressStyle.Segment(41).setColor(Color.BLACK),
                Notification.ProgressStyle.Segment(552).setColor(Color.YELLOW),
                Notification.ProgressStyle.Segment(253).setColor(Color.WHITE),
                Notification.ProgressStyle.Segment(94).setColor(Color.BLUE)
            )
        )
        .setProgressPoints(
            listOf(
                Notification.ProgressStyle.Point(60).setColor(Color.RED),
                Notification.ProgressStyle.Point(560).setColor(Color.GREEN)
            )
        )

請參閱 [範例應用程式][8]{:.external},試用這些 API。