Na tej stronie znajdziesz pomoc w rozwiązywaniu problemów i odpowiedzi na najczęstsze pytania dotyczące Cloud Messaging.
Czym różni się narzędzie do tworzenia powiadomień od FCM?
Firebase Cloud Messaging udostępnia pełny zestaw funkcji przesyłania wiadomości za pomocą pakietów SDK klienta i protokołu serwera HTTP. W przypadku wdrożeń o bardziej złożonych wymaganiach dotyczących przesyłania wiadomości odpowiednim wyborem jest FCM.
Kreator powiadomień to lekkie, bezserwerowe rozwiązanie do przesyłania wiadomości oparte na Firebase Cloud Messaging. Dzięki przyjaznej dla użytkownika konsoli graficznej i mniejszym wymaganiom dotyczącym kodowania narzędzie do tworzenia powiadomień umożliwia wysyłanie wiadomości w celu ponownego zaangażowania i utrzymania użytkowników, wspierania rozwoju aplikacji oraz prowadzenia kampanii marketingowych.
Uprawnienia |
|
Edytor powiadomień |
Cloud Messaging |
Cel |
Konkretne urządzenie |
|
|
|
Klienci subskrybujący tematy (np. pogodę) |
|
|
|
Klienci w zdefiniowanym segmencie użytkowników (aplikacja, wersja, język) |
|
|
|
Klienci w określonych grupach odbiorców usługi Analytics |
|
|
|
Klienci w grupach urządzeń |
|
|
|
Wysyłanie danych od klienta do serwera |
|
|
Typ wiadomości |
Powiadomienia do 2 KB |
|
|
|
Wiadomości z danymi o rozmiarze do 4 KB |
|
|
Dostawa |
Natychmiast |
|
|
|
Lokalny czas na urządzeniu klienta w przyszłości |
|
|
Analytics |
Wbudowane gromadzenie danych analitycznych dotyczących powiadomień i analiza ścieżki |
|
|
Czy aby korzystać z usługi FCM, muszę używać innych usług Firebase?
Możesz używać Firebase Cloud Messaging jako samodzielnego komponentu bez korzystania z innych usług Firebase.
Dlaczego urządzenia docelowe nie otrzymują wiadomości?
Jeśli wygląda na to, że urządzenia nie otrzymały wiadomości, najpierw sprawdź te 2 potencjalne przyczyny:
Obsługa wiadomości na pierwszym planie w przypadku powiadomień. Aplikacje klienckie muszą dodać logikę obsługi wiadomości, aby obsługiwać wiadomości z powiadomieniami, gdy aplikacja działa na pierwszym planie urządzenia. Szczegóły znajdziesz w przypadku iOS i Androida.
Ograniczenia zapory sieciowej. Jeśli Twoja organizacja ma zaporę sieciową, która ogranicza ruch do lub z internetu, musisz ją skonfigurować tak, aby zezwalała na połączenie z FCM. Dzięki temu aplikacje klienckie Firebase Cloud Messaging będą mogły odbierać wiadomości. Porty, które należy otworzyć:
FCM zwykle używa portu 5228, ale czasami korzysta też z portów 5229 i 5230.
FCM nie podaje konkretnych adresów IP, więc zezwól zaporze sieciowej na akceptowanie połączeń wychodzących w przypadku wszystkich adresów IP zawartych w blokach adresów IP wymienionych na liście ASN 15169 Google.
Dlaczego w mojej aplikacji na Androida nie jest wywoływana funkcja onMessageReceived
?
Gdy aplikacja działa w tle, wiadomości powiadomień są wyświetlane na pasku systemowym, a funkcja onMessageReceived
nie jest wywoływana. W przypadku powiadomień z ładunkiem danych powiadomienie jest wyświetlane na pasku systemowym, a dane dołączone do powiadomienia można pobrać z intencji uruchomionej, gdy użytkownik kliknie powiadomienie.
Więcej informacji znajdziesz w artykule Odbieranie i obsługa wiadomości.
Dlaczego moja aplikacja otrzymuje komunikat „Invalid argument for the given fid” (Nieprawidłowy argument dla podanego identyfikatora FID), gdy rejestruję się za pomocą FCM?
FID (Firebase Installation ID) to identyfikator instancji aplikacji. Jeśli dane instalacji instancji aplikacji zostaną przywrócone z kopii zapasowej, funkcja FCM zwróci ten błąd, aby wskazać, że identyfikator FID jest już zajęty przez inną instancję aplikacji, więc bieżąca instancja aplikacji nie może używać identyfikatora FID do rejestracji w usłudze FCM.
Zalecamy deweloperom wykonanie w aplikacji tych czynności:
- Wyklucz dane instalacji Firebase z kopii zapasowej. Dane instalacji Firebase są przechowywane w pliku
PersistedInstallation....json
. Nazwa pliku jest stała w przypadku aplikacji. Na przykład <exclude domain="file" path="PersistedInstallation....json"
/>
- Usuń plik
PersistedInstallation....json
, jeśli pojawią się błędy „Nieprawidłowy argument dla danego identyfikatora pliku”. Przy następnej rejestracji aplikacji w usłudze
FCM zostanie utworzony nowy identyfikator FID.
Firma Apple ogłosiła, że wycofuje starszy protokół binarny APNs. Czy muszę coś zrobić?
Nie. W 2017 r. Firebase Cloud Messaging przeszedł na protokół APNs oparty na HTTP/2.
Jeśli do wysyłania powiadomień na urządzenia z iOS używasz FCM, nie musisz nic robić.
FCM limity
Jak w ciągu 2 minut powiadomić dużą bazę klientów?
Ten przypadek użycia nie jest obsługiwany. Ruch musisz rozłożyć na 5 minut.
Moja aplikacja powiadamia użytkowników o wydarzeniach, a te wiadomości muszą być dostarczane natychmiast, aby wspierać mój model biznesowy. Czy mogę otrzymać większy limit?
Nie możemy zwiększyć przydziału z tego powodu. Ruch musi być rozłożony na 5 minut, aby uniknąć nagłych skoków.
Moje wiadomości dotyczą zaplanowanych wydarzeń. Jak mogę wysyłać cały ruch na początku godziny?
Zalecamy rozpoczęcie wysyłania powiadomień co najmniej 5 minut przed wydarzeniem. Możesz też wysyłać wiadomości z danymi i wdrożyć odpowiednik funkcji onMessageReceived
na swojej platformie, aby z wyprzedzeniem zaplanować lokalne powiadomienia.
Błędy 429 są trudne do rozwiązania dla mnie i mojej firmy. Czy mogę uzyskać zwolnienie lub większy limit, aby uniknąć błędów 429?
Rozumiemy, że limity mogą być problematyczne, ale są one niezbędne do zapewnienia niezawodności usługi i nie możemy przyznawać wyjątków. Używaj ponownych prób, aby prawidłowo obsługiwać błędy 429.
Ile czasu zajmie realizacja mojej prośby o zwiększenie limitu?
Twoja prośba o zwiększenie limitu zależy od tego, jak korzystasz z FCM. W każdym przypadku odpowiedź otrzymasz w ciągu kilku dni roboczych. W niektórych przypadkach może dojść do wymiany informacji na temat korzystania z FCM i różnych okoliczności, co może wydłużyć proces. Jeśli spełniasz wszystkie wymagania, większość zgłoszeń zostanie rozpatrzona w ciągu 2 tygodni.
Czy mogę uzyskać większy limit na potrzeby wydarzenia tymczasowego?
Możesz poprosić o dodatkowy limit, aby obsługiwać wydarzenie trwające do miesiąca.
Złóż prośbę co najmniej miesiąc przed wydarzeniem i podaj dokładne informacje o tym, kiedy się ono rozpocznie i zakończy. FCM dołoży wszelkich starań, aby spełnić Twoją prośbę. Jeśli przyznamy Ci zwiększenie limitu, zostanie ono cofnięte po dacie zakończenia wydarzenia.
Czy mój obecny limit może ulec zmianie?
Google nie będzie tego robić bez ważnego powodu, ale w razie potrzeby limity mogą zostać zmienione, aby chronić integralność systemu. W miarę możliwości Google powiadomi Cię o takich zmianach z wyprzedzeniem. Aktualizuj kontakty w umowie MSA dotyczącej usług w chmurze, aby zwiększyć szanse na otrzymywanie ogłoszeń o usługach.