Jeśli zainicjujesz aplikację bez prawidłowego zestawu opcji Firebase, nowi użytkownicy Twojej aplikacji doświadczą poważnych problemów.
Opcje Firebase to zestaw parametrów wymaganych przez usługi w celu pomyślnej komunikacji z interfejsami API serwera Firebase i powiązania danych klienta z projektem Firebase i aplikacją Firebase. Usługi Firebase opierają się na prawidłowych opcjach Firebase dostępnych w podstawowej/wspólnej bibliotece Firebase utworzonej podczas inicjalizacji Firebase.
Różne usługi Firebase wymagają do prawidłowego działania różnych opcji Firebase, ale wszystkie usługi Firebase wymagają następujących opcji Firebase:
- Klucz API — Uwaga: to nie jest klucz serwera FCM, zobacz Klucze serwera FCM .
Przykładowa wartość:AIzaSyDOCAbC123dEf456GhI789jKl012-MnO
- Identyfikator projektu — przykładowa wartość:
myapp-project-123
. - Identyfikator aplikacji („AppID”) — unikalny identyfikator Twojej aplikacji, którego format zależy od platformy:
- Dla Androida:
mobilesdk_app_id
— Uwaga: to nie jest nazwa pakietu dla Androida .
Przykładowa wartość:1:1234567890:android:321abc456def7890
- Dla iOS+:
GOOGLE_APP_ID
— Uwaga: to nie jest identyfikator pakietu Apple .
Przykładowa wartość:1:1234567890:ios:321abc456def7890
- Dla Androida:
Rozwiązywanie problemów z aplikacjami na Androida
Aby poprawić bezpieczeństwo, 27 lutego zaktualizowano pakiet Firebase SDK, a następnie zastąpiono usługę Firebase Instance ID zależnością od interfejsu Firebase Installations API .
Instalacje Firebase wymuszają istnienie i ważność obowiązkowego klucza API opcji Firebase, identyfikatora projektu i identyfikatora aplikacji w celu powiązania danych klienta z projektem Firebase. Aby uzyskać więcej informacji, zobacz FirebaseOptions
.
Firebase Cloud Messaging (FCM) z identyfikatorem instancji Firebase (IID)
Jeśli nowi użytkownicy Twojej aplikacji mają problemy z FCM, możliwe, że inicjujesz Firebase bez wymaganego zestawu opcji Firebase.
Twoja aplikacja może używać niekompletnego lub błędnego pliku konfiguracyjnego google-services.json
; lub Twoja aplikacja programowo inicjuje Firebase bez pełnego zestawu wymaganych opcji Firebase.
W rezultacie usługi Firebase, takie jak Firebase Cloud Messaging, będą działać nieprawidłowo u użytkowników końcowych, którzy zainstalowali Twoją aplikację po jej wydaniu ze zaktualizowanymi pakietami SDK Firebase. Ponadto powtarzające się nieudane żądania do Firebase mogą spowolnić korzystanie z Twojej aplikacji przez użytkownika końcowego.
Co muszę zrobić?
Aby naprawić nieprawidłowe usługi Firebase dla swoich aplikacji:
- Zaktualizuj swoją aplikację, inicjując Firebase prawidłowym kluczem API swojego projektu, prawidłowym identyfikatorem projektu i prawidłowym identyfikatorem aplikacji (
mobilesdk_app_id
lub „Identyfikator aplikacji”).- Domyślny proces inicjalizacji przy użyciu pliku konfiguracyjnego Firebase : pobierz plik konfiguracyjny google-services.json z konsoli Firebase, a następnie zastąp istniejący plik w swojej aplikacji.
- Inicjalizacja programowa przy użyciu obiektu
FirebaseOptions
: pobierz plik konfiguracyjny google-services.json z konsoli Firebase, aby znaleźć klucz API, identyfikator projektu i identyfikator aplikacji, a następnie zaktualizuj te wartości w obiekcieFirebaseOptions
w swojej aplikacji.
- Wydaj nową wersję aplikacji w Sklepie Play.
Rozwiązywanie problemów z aplikacjami Apple
Aby poprawić bezpieczeństwo, 14 stycznia zaktualizowano pakiet Firebase SDK, a następnie zastąpiono usługę Firebase Instance ID zależnością od interfejsu Firebase Installations API .
Instalacje Firebase wymuszają istnienie i ważność obowiązkowego klucza API opcji Firebase, identyfikatora projektu i identyfikatora aplikacji w celu powiązania danych klienta z projektem Firebase. Aby uzyskać więcej informacji, zobacz FIROptions
.
Firebase Cloud Messaging (FCM) z identyfikatorem instancji Firebase (IID)
Jeśli nowi użytkownicy Twojej aplikacji mają problemy z FCM, możliwe, że inicjujesz Firebase bez wymaganego zestawu opcji Firebase.
Twoja aplikacja może używać niekompletnego lub nieprawidłowego pliku konfiguracyjnego GoogleService-Info.plist
; lub Twoja aplikacja programowo inicjuje Firebase bez pełnego zestawu wymaganych opcji Firebase.
W rezultacie usługi Firebase, takie jak Firebase Cloud Messaging, będą działać nieprawidłowo u użytkowników końcowych, którzy zainstalowali Twoją aplikację po jej wydaniu ze zaktualizowanymi pakietami SDK Firebase. Ponadto powtarzające się nieudane żądania do Firebase mogą spowolnić korzystanie z Twojej aplikacji przez użytkownika końcowego.
Co muszę zrobić?
Aby naprawić nieprawidłowe usługi Firebase dla swoich aplikacji:
- Zaktualizuj swoją aplikację, inicjując Firebase prawidłowym kluczem API projektu, prawidłowym identyfikatorem projektu i prawidłowym identyfikatorem aplikacji (
GOOGLE_APP_ID
lub „Identyfikator aplikacji”).- Domyślny proces inicjalizacji przy użyciu pliku konfiguracyjnego Firebase : pobierz plik konfiguracyjny GoogleService-Info.plist z konsoli Firebase, a następnie zastąp istniejący plik w swojej aplikacji.
- Inicjalizacja programowa przy użyciu obiektu
FIROptions
: pobierz plik konfiguracyjny GoogleService-Info.plist z konsoli Firebase, aby znaleźć klucz API, identyfikator projektu i identyfikator aplikacji, a następnie zaktualizuj te wartości w obiekcieFIROptions
w swojej aplikacji.
- Wydaj nową wersję swojej aplikacji w App Store.
Klucze serwera FCM
Jeśli Twoja aplikacja używa klucza serwera FCM zamiast klucza Cloud API, może to powodować lukę w zabezpieczeniach, jeśli używasz tego samego klucza serwera FCM do wysyłania powiadomień push za pośrednictwem FCM. W takim przypadku zdecydowanie zalecamy sprawdzenie sposobu, w jaki serwer uwierzytelnia żądania wysyłania do FCM .
Pamiętaj, że klucze serwera FCM (które nie są tym samym, co klucze Firebase/Cloud API) nie mogą być dołączane do aplikacji, ponieważ mogą zostać wykorzystane do wysyłania powiadomień push w imieniu Twojego projektu.