Se você inicializar o app sem um conjunto válido de opções do Firebase, os novos usuários do aplicativo terão problemas graves.
As opções do Firebase são um conjunto de parâmetros exigidos pelos serviços para se comunicar com as APIs do servidor do Firebase e associar os dados do cliente ao projeto e ao aplicativo do Firebase. Os serviços do Firebase dependem das opções válidas do Firebase a partir da biblioteca comum/principal do Firebase criada durante a inicialização.
Diferentes serviços do Firebase exigem diferentes opções do Firebase para funcionar corretamente. No entanto, todos os serviços do Firebase exigem as seguintes opções:
- Chave de API: essa não é uma chave de servidor do FCM. Consulte Chaves de servidor do FCM.
Exemplo de valor:AIzaSyDOCAbC123dEf456GhI789jKl012-MnO
- ID do projeto. Exemplo de valor:
myapp-project-123
. - ID do aplicativo ("AppID"): identificador exclusivo do seu app com um formato que depende da plataforma:
- Para Android:
mobilesdk_app_id
Observação: esse não é um nome de pacote Android.
Exemplo de valor:1:1234567890:android:321abc456def7890
- Para iOS+:
GOOGLE_APP_ID
Observação: este não é um ID do pacote da Apple.
Exemplo de valor:1:1234567890:ios:321abc456def7890
- Para Android:
Resolver problemas de apps Android
Para melhorar a segurança, o SDK do Firebase é atualizado em 27 de fevereiro e, em seguida, substituiu o serviço de código da instância do Firebase por uma dependência na API de instalações do Firebase.
As instalações do Firebase impõem a existência e a validade da chave de API das opções obrigatórias do Firebase,
do ID do projeto e do ID do aplicativo para associar os dados do
cliente ao seu projeto do Firebase. Veja mais informações em
FirebaseOptions
.
Firebase Cloud Messaging (FCM) com o ID de instância do Firebase (IID)
Se os novos usuários do seu app estiverem tendo problemas com o FCM, é possível que você esteja inicializando o Firebase sem o conjunto necessário de opções.
Seu aplicativo pode estar usando um arquivo de configuração
google-services.json
incompleto ou incorreto. Ou seu app
está inicializando o Firebase de maneira programática sem o conjunto completo de opções do
Firebase necessárias.
Por isso, serviços do Firebase, como o Firebase Cloud Messaging, não funcionarão corretamente para os usuários finais que instalaram seu app após o lançamento com os SDKs atualizados do Firebase. Além disso, solicitações repetidas que falham no Firebase podem atrasar a experiência do usuário final do seu app.
O que preciso fazer?
Para corrigir os serviços com falha do Firebase nos seus aplicativos:
- Atualize o aplicativo inicializando o Firebase com uma chave de API válida do seu projeto, um ID do projeto válido e um ID do aplicativo válido (
mobilesdk_app_id
ou "ID do app").- Processo de inicialização padrão usando um arquivo de configuração do Firebase: faça o download do arquivo de configuração google-services.json do Console do Firebase e substitua o arquivo existente no seu app.
- Inicialização programática usando um objeto
FirebaseOptions
: faça o download do arquivo de configuração google-services.json do Console do Firebase para encontrar a chave de API, o ID do projeto e o ID do aplicativo. Atualize esses valores no objetoFirebaseOptions
no seu app.
- Lance uma nova versão do seu app na Play Store.
Resolver problemas de apps da Apple
Para melhorar a segurança, o SDK do Firebase é atualizado em 14 de janeiro e depois substituiu o serviço de ID da instância do Firebase por uma dependência na API de instalações do Firebase.
As instalações do Firebase impõem a existência e a validade da chave de API das opções obrigatórias do Firebase,
do ID do projeto e do ID do aplicativo para associar os dados do
cliente ao seu projeto do Firebase. Veja mais informações em
FIROptions
.
Firebase Cloud Messaging (FCM) com o ID de instância do Firebase (IID)
Se os novos usuários do seu app estiverem tendo problemas com o FCM, é possível que você esteja inicializando o Firebase sem o conjunto necessário de opções.
Seu aplicativo pode estar usando um arquivo de configuração GoogleService-Info.plist
incompleto ou inválido.
Ou seu app está
inicializando o Firebase de maneira programática
sem o conjunto completo de opções do Firebase.
Por isso, serviços do Firebase, como o Firebase Cloud Messaging, não funcionarão corretamente para os usuários finais que instalaram seu app após o lançamento com os SDKs atualizados do Firebase. Além disso, várias solicitações com falha para o Firebase podem atrasar a experiência do usuário final do seu app.
O que preciso fazer?
Para corrigir os serviços com falha do Firebase nos seus aplicativos:
- Atualize o aplicativo inicializando o Firebase com uma chave de API válida do seu projeto, um ID do projeto válido e um ID do aplicativo válido (
GOOGLE_APP_ID
ou "ID do app").- Processo de inicialização padrão usando um arquivo de configuração do Firebase: faça o download do arquivo de configuração GoogleService-Info.plist no Console do Firebase e substitua o arquivo existente no seu app.
- Inicialização programática usando um objeto
FIROptions
: faça o download do arquivo de configuração do GoogleService-Info.plist no Console do Firebase para encontrar a chave de API, o ID do projeto e o ID do aplicativo. Atualize esses valores no objetoFIROptions
no seu app.
- Lance uma nova versão do seu app na App Store.
Chaves do servidor FCM
Se o app usa uma chave do servidor do FCM em vez de uma chave de API do Cloud, isso pode causar uma vulnerabilidade de segurança caso você esteja usando a mesma chave do servidor do FCM para enviar notificações push via FCM. Nesse caso, é altamente recomendável que você revise como o servidor autentica as solicitações de envio ao FCM.
Observe que as chaves de servidor do FCM (que não são iguais às chaves da API do Firebase/Cloud) não podem ser incluídas em aplicativos, porque podem ser usadas para enviar notificações push no nome do seu projeto.