Tworzenie powiadomienia dotyczącego postępu

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

Android 16 wprowadza nowy szablon powiadomień, który pomaga użytkownikom bezproblemowo śledzić rozpoczęte przez nich procesy od początku do końca. Te powiadomienia mają większą widoczność w systemie i wyższą pozycję w panelu powiadomień.

Użyj Notification.ProgressStyle, aby stylizować powiadomienia dotyczące postępu. Najważniejsze przypadki użycia to m.in. usługi przewozu osób, dostawy i nawigacja. W ramach tej klasy możesz oznaczać stany i etapy na ścieżce użytkownika za pomocą punktów i segmentów.

Odpowiednie klasy

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

Anatomia i dostosowywanie

Obrazy poniżej 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 treś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ę trackera i używać segmentów oraz punktów, aby oznaczać przejazdy i ich etapy.

Sprawdzone metody

Używaj odpowiednich interfejsów API i stosuj sprawdzone metody, aby zapewnić użytkownikom jak najlepsze wrażenia podczas wyświetlania aktualizacji postępów.

  • 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ą parametru Notification#setLargeIcon.
  • Używaj zwięzłego i jasnego języka, aby określić postęp na ścieżce użytkownika. Ważne informacje, które powinny być zawarte w powiadomieniu, to czas przyjazdu, imię kierowcy i stan przejazdu.
  • Wyświetlaj w powiadomieniu przydatne i trafne działania, które usprawniają ścieżkę użytkownika. Na przykład dodanie napiwku i dania do nowo zainicjowanego zamówienia jedzenia z dostawą to przydatne działania przed dostawą.
  • Używaj segmentówpunktów, aby oznaczać stany. Na przykład segmenty mogą kolorować stan i czas trwania ruchu w trakcie wspólnego przejazdu. Punkty reprezentują stany dla etapów, takich jak przygotowanie jedzenia, dostawa i odbiór pasażera.
  • Zaktualizuj widok postępów, aby dokładnie odzwierciedlał rzeczywisty przebieg procesu. Na przykład zmiany w warunkach na drodze mogą być odzwierciedlone w zmianach kolorów odcinków i aktualizacjach tekstu.

Ten fragment kodu pokazuje, jak powiadomienie ProgressStyle może być używane w kontekście wspólnych przejazdów:

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 wypróbować te interfejsy API, zapoznaj się z [przykładową aplikacją][8]{:.external}.