Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

Ustaw i zarządzaj priorytetem wiadomości

Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.

Masz dwie opcje przypisywania priorytetu dostarczania do wiadomości odebranych w systemie Android: normalny i wysoki priorytet. Dostarczanie wiadomości o normalnym i wysokim priorytecie działa tak:

  • Normalny priorytet. Jest to domyślny priorytet wiadomości z danymi . Normalne wiadomości priorytetowe są dostarczane natychmiast, gdy urządzenie nie śpi. Gdy urządzenie jest w trybie drzemki , dostarczenie może być opóźnione w celu oszczędzania baterii do momentu zakończenia drzemki. W przypadku mniej czasochłonnych wiadomości, takich jak powiadomienia o nowej poczcie e-mail, synchronizacja interfejsu użytkownika lub synchronizowanie danych aplikacji w tle, wybierz normalny priorytet dostarczania.

    Po otrzymaniu normalnej wiadomości priorytetowej w systemie Android, która żąda synchronizacji danych w tle dla Twojej aplikacji, możesz zaplanować zadanie za pomocą WorkManagera , aby obsłużyć je, gdy sieć będzie dostępna.

  • Wysoki priorytet. FCM próbuje natychmiast dostarczyć wiadomości o wysokim priorytecie, umożliwiając FCM obudzenie urządzenia uśpionego w razie potrzeby i uruchomienie ograniczonego przetwarzania (w tym bardzo ograniczonego dostępu do sieci). Wiadomości o wysokim priorytecie zazwyczaj powinny skutkować interakcją użytkownika z Twoją aplikacją lub jej powiadomieniami.

Korzystanie z wiadomości o wysokim priorytecie dla Androida

Wiadomości o wysokim priorytecie w systemie Android są przeznaczone do wyświetlania treści, które są wrażliwe na czas, widoczne dla użytkownika i powinny skutkować powiadomieniami skierowanymi do użytkownika. Jeśli FCM wykryje wzorzec, w którym wiadomości nie skutkują powiadomieniami skierowanymi do użytkownika, Twoje wiadomości mogą zostać zdegradowane do normalnego priorytetu. FCM wykorzystuje 7 dni zachowania wiadomości przy ustalaniu, czy zmienić priorytet wiadomości; określa to niezależnie dla każdej instancji aplikacji. Jeśli w odpowiedzi na wiadomości o wysokim priorytecie powiadomienia są wyświetlane w sposób widoczny dla użytkownika, przyszłe wiadomości o wysokim priorytecie nie zostaną usunięte z priorytetu. Dotyczy to niezależnie od tego, czy powiadomienie jest wyświetlane przez pakiet SDK FCM za pośrednictwem wiadomości z powiadomieniem , czy powiadomienia generowanego przez programistę za pośrednictwem wiadomości z danymi .

Mierzenie usuwania priorytetów wiadomości w systemie Android

  • Indywidualne wiadomości. W momencie dostarczenia możesz określić, czy dana wiadomość została pozbawiona priorytetu, czy nie, porównując jej dostarczony priorytet z getPriority() z jej pierwotnym priorytetem z getOriginalPriority()

  • Wszystkie wiadomości. Interfejs FCM Aggregate Delivery Data API może zgłaszać, jaki procent wszystkich Twoich wiadomości do systemu Android jest usuwany z priorytetów. Niektóre wiadomości mogą zostać pominięte w zbiorczych raportach danych, ale ogólnie powinny one dawać globalny obraz wskaźników usuwania priorytetów wiadomości. Zobacz nasz artykuł na temat zagregowanych danych o dostawie, aby uzyskać więcej informacji i przykładowy kod do wysyłania zapytań do interfejsu API; można go również eksplorować z eksploratora API .

Rozwiązywanie problemów

  • Upewnij się, że Twoja instancja aplikacji ma włączone powiadomienia. Jeśli użytkownik wyłączył uprawnienia do powiadomień dla Twojej aplikacji, żadne z Twoich powiadomień nie zostanie opublikowane, w wyniku czego Twoje wiadomości zostaną usunięte z priorytetu. Przed wysłaniem wiadomości o wysokim priorytecie do instancji aplikacji należy sprawdzić, czy powiadomienia są włączone .

  • Nie dzwoń do domu przed wysłaniem powiadomienia. Ponieważ niewielka część populacji telefonów komórkowych z Androidem korzysta z sieci o dużym opóźnieniu, unikaj otwierania połączenia z serwerami przed wyświetleniem powiadomienia. Oddzwanianie do serwera przed upływem dozwolonego czasu przetwarzania może być ryzykowne dla użytkowników w sieciach o dużym opóźnieniu. Zamiast tego dołącz treść powiadomienia do wiadomości FCM i natychmiast ją wyświetl. Jeśli potrzebujesz zsynchronizować dodatkowe treści w aplikacji w systemie Android, możesz zaplanować zadanie w WorkManager , aby obsłużyć to w tle.