Tworzenie powiadomienia dotyczącego postępu

powiadomienie w górnej części ekranu z informacjami o postępach,
Rysunek 1. Powiadomienie z informacjami o postępie u góry panelu powiadomień.

Android 16 wprowadza nowy szablon powiadomień, który pomaga użytkownikom bezproblemowo śledzić procesy inicjowane przez nich od początku do końca. Te powiadomienia są lepiej widoczne w interfejsie systemu i zajmują najwyższe miejsce w panelu powiadomień.

Aby stylizować powiadomienia z informacjami o postępie, użyj Notification.ProgressStyle. Główne przypadki użycia to wspólne przejazdy, dostawa i nawigacja. W tej klasie możesz oznaczać stany i punkty kontrolne w procesie użytkownika za pomocą punktów i segmentów.

Odpowiednie klasy

Te klasy zawierają różne interfejsy API, których używasz do tworzenia powiadomienia ProgressStyle:

Anatomia i dostosowywanie

Te obrazy przedstawiają różne części powiadomień ProgressStyle:

Rysunek 2.

A. Nagłówek – dodatkowy tekst

Notification.Builder#setSubText()

B. Nagłówek – czas

Notification.Builder#setWhen()

C. Tytuł treści

Notification.Builder#setContentTitle()

D. Tekst zawartości

Notification.Builder#setContentText()

E. Pasek postępu

Notification.ProgressStyle

F. Przycisk polecenia

Notification.Builder#addAction()

Rysunek 3. Aplikacje mogą ustawić obraz pojazdu jako ikonę śledzenia oraz używać segmentów i punktów do oznaczania wspólnych przejazdów i punktów kontrolnych.

Sprawdzone metody

Aby zapewnić użytkownikom jak najlepsze wrażenia podczas aktualizacji postępu, używaj odpowiednich interfejsów API i stosuj sprawdzone metody.

  • Ustaw odpowiednie pola, aby zwiększyć widoczność w obszarze powiadomień.
  • Używaj odpowiednich elementów wizualnych, aby prowadzić użytkowników. Na przykład aplikacje do wspólnych przejazdów powinny ustawić obraz pojazdu i użyć w powiadomieniu najbardziej dokładnego koloru pojazdu za pomocą Notification#setLargeIcon.
  • Używaj zwięzłego i jasnego języka, aby określić postęp w procesie użytkownika. Ważne informacje, które powinny być zawarte w powiadomieniu, to czas przyjazdu, imię kierowcy i stan podróży.
  • W powiadomieniu umieść przydatne i odpowiednie działania, które usprawnią proces użytkownika. Na przykład w przypadku nowo zainicjowanego zamówienia jedzenia z dostawą przydatne działania przed dostawą to „Napiwek” i „Dodaj danie”.
  • Używaj segmentów i punktów do oznaczania stanów. Na przykład segmenty mogą kolorować stan i czas trwania ruchu w podróży wspólnej. Punkty reprezentują stany punktów kontrolnych, takich jak przygotowanie jedzenia, dostawa i odbiór pasażera.
  • Aktualizuj informacje o postępie, aby dokładnie odzwierciedlały rzeczywisty postęp w podróży. Na przykład zmiany w warunkach na drodze mogą być odzwierciedlane w zmianach kolorów segmentów i aktualizacjach tekstu.

Ten fragment kodu pokazuje, jak można użyć powiadomienia ProgressStyle w kontekście wspólnego przejazdu:

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)
            )
        )

Aby eksperymentować z tymi interfejsami API, zapoznaj się z przykładową aplikacją.