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 podejmuje próby wyświetlania reklam o wysokim priorytecie wiadomości natychmiast, co pozwoli aplikacji FCM na wybudzenie urządzenia uśpionego, 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. Jeśli 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 zawierające dane), które spełniają określone 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
naDENY
w obiekcieAndroidNotification
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że raportować, jaki odsetek wszystkich wiadomości wysyłanych do systemu Android 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: zagregowane dane o wyświetlaniu: 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 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 synchronizować dodatkowe treści w aplikacjach na Androidzie, możesz zaplanować zadanie w WorkManagera, który zajmuje się tym w tle.