Ustawianie priorytetu wiadomości i zarządzanie nim

Priorytet dostarczania możesz przypisać kolejnym wiadomościom na 2 sposoby. na urządzeniu z Androidem: normalny i wysoki priorytet. Dostarczanie wiadomości standardowych i o wysokim priorytecie działa podobny do tego:

  • Normalny priorytet. To jest domyślny priorytet dla transmisji danych. Wiadomości o normalnym priorytecie są dostarczane natychmiast, gdy urządzenie nie jest uśpione. Gdy urządzenie jest w trybie uśpienia, wyświetlanie może być opóźnione, by oszczędzać baterię do chwili uśpienia urządzenia. W przypadku mniej pilnych wiadomości, takich jak powiadomienia o nowych e-mailach, synchronizację interfejsu użytkownika i synchronizacja danych aplikacji wybierz zwykły priorytet wyświetlania.

    Przy normalnym priorytecie na Androidzie z prośbą o synchronizację danych w tle dla aplikacji, może zaplanować zadanie na urządzeniu WorkManager będzie obsługiwać ją, gdy sieć będzie dostępna.

  • Wysoki priorytet. FCM próbuje wyświetlać reklamy o wysokim priorytecie wiadomości natychmiast, dzięki czemu FCM może wybudzić urządzenie uśpione, gdy: i do pewnego poziomu ograniczonego przetwarzania (w tym bardzo ograniczonej sieci dostęp). Wiadomości o wysokim priorytecie zwykle powinny wymagać interakcji użytkownika z aplikacją lub jej powiadomieniami.

Obsługa wiadomości i obniżanie priorytetu wiadomości w Androidzie

Wiadomości o wysokim priorytecie na Androidzie są przeznaczone do wyświetlania w określonym czasie i widoczne dla użytkowników treści i powinny powodować powiadomienia dla użytkowników. W przypadku FCM wykrywa wzorzec, w którym wiadomości nie powodują wyświetlania powiadomień dla użytkowników, wiadomości mogą zostać obniżone do normalnego priorytetu lub przekazane do obsługi przez Usługi Google Play.

FCM zajmuje 7 dni zachowania wiadomości przy określaniu, czy zmniejszyć priorytet, czy serwer proxy wiadomości; Sprawia to, że ustalasz to niezależnie dla każdego przypadku aplikacji. Jeśli w odpowiedzi na wiadomości o wysokim priorytecie powiadomienia zostaną wyświetlane w sposób widoczny dla użytkowników, nie ma wpływu na wiadomości.

Przekazywanie powiadomień w Usługach Google Play

Powiadomienia o wysokim priorytecie (nie wiadomości dotyczące danych) spełniające określone kryteria są uwzględniane przez Usługi Google Play i nie obniżają priorytetu. Oznacza to, że powiadomienia są wyświetlane przez Usługi Google Play na bez konieczności uruchamiania aplikacji. Ma to na celu zapewnienie poprawia ogólną wygodę korzystania z urządzeń z Androidem.

Powiadomienia przesyłane przez serwer proxy wprowadzają zmiany w sposobie analizy związane z otrzymywanymi wiadomościami:

  • Do celów analitycznych aby otrzymywać raporty z powiadomień przesyłanych przez serwer proxy, Twoja aplikacja musi używać pakietu SDK FCM 24.0.0 lub nowszej.
  • Mogą Państwo zauważyć opóźnienia lub spadek liczby liczba otrzymanych wiadomości a liczbami sprzed wprowadzenia usług przez serwer proxy powiadomienia. Dzieje się tak, ponieważ statystyki powiadomień przesyłanych przez serwer proxy raportowana po uruchomieniu aplikacji i może nie być w ogóle raportowana, jeśli nie powoduje uruchomienia aplikacji.

Taki sposób przekazywania powiadomień z aplikacji jest domyślny używając Androida Q+ i Usług Google Play w wersji 19054000 lub nowszej. Wiadomości wysyłane przez interfejs API HTTP v1 są przesyłane przez serwer proxy, natomiast wiadomości wysyłane przez Firebase konsola i starsze interfejsy API nie będą działać przez serwer proxy. Pamiętaj, że ta funkcja jest obecnie w wersji beta i może ulec zmianie.

Mimo że zdecydowanie zalecamy pozostawienie włączonego przekazywania dostępu, ponieważ może to przynieść korzyści baterii urządzenia i pamięci, możesz zrezygnować z tego zachowania w dowolnym z tych sposoby:

  • Na poziomie aplikacji: w manifeście dodaj dyrektywę <meta-data android:name= "delivery_metrics_exported_to_big_query_enabled" android:value="false"/>.
  • Na poziomie instancji aplikacji: w przypadku instancji aplikacji ustaw fun setNotificationDelegationEnabled(disable: Boolean): Task<Void!> w ramach procesu UI aplikacji w zależności od konkretnego przypadku użycia.
  • Dla poszczególnych wiadomości: ustaw klucz proxy na DENY w obiekcie AndroidNotification dla żądania wysłania.

Mierzenie obniżenia priorytetu wiadomości na Androidzie

  • Poszczególne wiadomości. Przy dostawie możesz ustalenie, czy dla konkretnej wiadomości zmieniono priorytet czy nie, przez porównanie jego priorytet, z getPriority() z pierwotnym ustawieniem priorytet z getOriginalPriority().

  • Wszystkie wiadomości. Interfejs FCM Aggregate Delivery Data API możesz raportować, jaki odsetek wszystkich Twoich wiadomości wysyłanych do Androida obniżyliśmy jego priorytet. Niektóre wiadomości mogą zostać pominięte w raportach zbiorczych, ale ogólnie powinny dawać globalny wgląd w współczynniki obniżenia priorytetu wiadomości. Przeczytaj nasz artykuł na temat: zbiorczych danych o wyświetlaniu, gdzie znajdziesz więcej informacji i przykładowy kod do wysyłania zapytań do interfejsu API; Można go również przeglądać API Explorer.

  • Powiadomienia przez serwer proxy. Powiadomienia przesyłane przez serwer proxy nie są uwzględniane w bieżących danych dotyczących wyświetleń w FCM ani Google Analytics, więc możesz zauważyć spadek wskaźników związanych z dostarczaniem powiadomień nawet o 15%. Dla: raportowania wiadomości przesyłanych przez serwer proxy, użyj Interfejs FCM Aggregate Delivery Data API. ProxyNotificationInsightPercents zgłasza odsetek udanych powiadomienia przesyłane przez serwer proxy oraz szczegóły dotyczące wiadomości, których nie udało się udało się przesłać do serwera proxy.

Rozwiązywanie problemów

  • Sprawdź, czy w instancji aplikacji są włączone powiadomienia. Jeśli użytkownik wyłączył Twojej aplikacji zgodę na wyświetlanie powiadomień, żadne powiadomienia nie zostaną opublikowane. Oznacza to, że wiadomości będą miały niższy priorytet. Przed wysłaniem wiadomości o wysokim priorytecie do instancji aplikacji sprawdź, czy powiadomienia są włączone.

  • Nie dzwoń do domu przed opublikowaniem powiadomienia. Mała część użytkowników urządzeń z Androidem w sieciach o dużych opóźnieniach, unikaj otwierania połączenia z serwerami, wyświetlania powiadomienia. Wywołanie serwera przed końcem dozwolony czas przetwarzania może być niebezpieczny dla użytkowników korzystających z sieci o dużych opóźnieniach. Zamiast tego dodaj parametr treść powiadomienia w wiadomości FCM i wyświetli ją od razu. Jeśli potrzebujesz aby zsynchronizować dane w aplikacjach na Androidzie, możesz zaplanować zadanie w WorkManagera, który zajmuje się tym w tle.