Powiadomienia na Wear OS

Powiadomienia na zegarkach korzystają z tych samych interfejsów API i mają tę samą strukturę co powiadomienia na telefonach.

Powiadomienia mogą wyświetlać się na zegarku na 2 sposoby:

  1. Aplikacja mobilna tworzy powiadomienie, a system automatycznie łączy, powiadomienie na zegarek.
  2. Aplikacja do noszenia tworzy powiadomienie.

W obu przypadkach użyj NotificationCompat.Builder zajęć, aby tworzyć powiadomienia. Gdy tworzysz powiadomienia za pomocą klasy konstruktora, system dba o prawidłowe wyświetlanie powiadomień. Na przykład jeśli wyślesz powiadomienie z aplikacji w aplikacji mobilnej, każde powiadomienie będzie się pojawiać jako karta w Strumieniu powiadomień.

Z przykładu poniżej dowiesz się, jak wyświetlają się powiadomienia. karty powiadomień

Rysunek 1. To samo powiadomienie wyświetlane na telefonie i na zegarku.

Użyj jednej z NotificationCompat.Style aby uzyskać najlepsze wyniki.

Uwaga: Używasz RemoteViews usuwa powiadomienia o układach niestandardowych, a urządzenie do noszenia wyświetla tylko tekst i ikony.

Polecane powiadomienia na urządzeniach do noszenia

Używaj rozwijanych powiadomień jako punktu wyjścia dla wszystkich powiadomień, to świetny sposób na zaangażowanie użytkowników urządzenia do noszenia. W powiadomieniu wyświetli się stan zwinięty tacy, aby można było łatwo przeglądać treści. Jeśli użytkownik ją kliknie, powiadomienie się rozwinie. dzięki którym można przewijać dodatkowe treści i czynności.

Możesz utworzyć powiadomienie rozwijane tak samo jak na komórce, używając dowolnej z tych opcji: NotificationCompat.Style podklasy. Na przykład standardowe powiadomienie zawierające NotificationCompat.MessagingStyle wygląda tak: powiadomienie rozwijane

Rysunek 2. Przykład powiadomienia MessagingStyle na Wear OS.

Widać, że powiadomienie ma wiele Działania wyświetlane na dole w stanie rozwiniętym.

Oto przykłady NotificationCompat.BigPictureStyle, NotificationCompat.BigTextStyle, NotificationCompat.InboxStyle, i NotificationCompat.MessagingStyle, zapoznaj się z przykładem powiadomienia w GitHubie.

Wskazówka: jeśli powiadomienie zawiera opcję „odpowiedź” działanie, na przykład wiadomość aplikacji, możesz zmienić działanie powiadomienia. Możesz na przykład włączyć rozpoznawanie mowy bezpośrednio z urządzeń do noszenia lub wstępnie zdefiniowanych odpowiedzi tekstowych, setChoices() Więcej informacji: Dodaj przycisk odpowiedzi.

Unikaj powielania powiadomień

Domyślnie powiadomienia są przesyłane z towarzyszącej aplikacji na telefon do dowolnych sparowanych zegarków. To jest to świetne rozwiązanie, gdy nie masz zainstalowanej aplikacji do noszenia.

Jeśli jednak utworzysz osobną aplikację na zegarek i aplikację towarzyszącą na telefon, powodują duplikowanie powiadomień.

Wear OS pozwala blokować zduplikowane powiadomienia za pomocą interfejsów API mostowania. To jest szczególnie ważne w przypadku aplikacji na urządzenia z systemem Wear OS 5 lub nowszym, ponieważ niektóre powiadomień, które można zamknąć na urządzeniu mobilnym, nie można zamknąć na urządzeniu z Wear OS. Więcej informacji: Opcje przejścia między powiadomieniami

Dodawanie do powiadomienia funkcji urządzeń do noszenia

Jeśli chcesz dodać do powiadomienia funkcje urządzenia do noszenia, takie jak ukrywanie ikona aplikacji w powiadomieniu na urządzeniu do noszenia lub umożliwiająca użytkownikom dyktowanie odpowiedzi przy użyciu rozpoznawania mowy możesz używać NotificationCompat.WearableExtender, aby określić opcje. Aby użyć tego interfejsu API, wykonaj te czynności:

  1. Utworzenie instancji WearableExtender, ustawiając opcje urządzeń do noszenia dla powiadomienia.
  2. Utwórz instancję NotificationCompat.Builder, ustawiam wybrane właściwości dla powiadomienia zgodnie z opisem powyżej.
  3. Zadzwoń do nas extend() na powiadomieniu i przekazać WearableExtender Spowoduje to zastosowanie do powiadomienia opcji urządzenia do noszenia.
  4. Zadzwoń do nas build(), aby utworzyć powiadomienie.

Uwaga: Jeśli używasz NotificationManager platformy, niektóre funkcje z NotificationCompat.WearableExtender nie działają, więc upewnij się, że używasz NotificationCompat.

Możesz synchronizować odrzucenia i anulowania powiadomień na urządzeniach użytkownika. Do zsynchronizować odrzucenie, użyj setDismissalId(). Dla każdego powiadomienia przekaż globalnie unikalny identyfikator Identyfikator w formie ciągu znaków przy wywołaniu setDismissalId() Po zamknięciu powiadomienia wszystkie pozostałe powiadomienia z tym samym identyfikatorem odrzucenia są zamykane zarówno na zegarku, powiązany telefon. Aby pobrać identyfikator odrzucenia, użyj getDismissalId()

Określ działania tylko na urządzeniach do noszenia

Jeśli chcesz mieć dostęp do różnych działań na zegarku i telefonie, WearableExtender.addAction() Po dodaniu działania za pomocą tej metody urządzenie do noszenia nie wyświetla żadnych innych działań dodanych z NotificationCompat.Builder.addAction() Działania dodane za pomocą: Nazwa WearableExtender.addAction() jest widoczna tylko na urządzeniu do noszenia, a nie przez telefon.