Esta página oferece dicas e solução de problemas para problemas específicos da plataforma Apple que você pode encontrar ao usar o Firebase.
Tem outros desafios ou não vê seu problema descrito abaixo? Certifique-se de verificar as perguntas frequentes principais do Firebase para obter mais perguntas frequentes sobre o Firebase ou específicas do produto.
Você também pode verificar o repositório GitHub do SDK das plataformas Firebase Apple para obter uma lista atualizada de problemas relatados e soluções de problemas. Recomendamos que você registre seus próprios problemas relacionados ao SDK das plataformas Firebase Apple lá também!
Quais versões do Xcode o Firebase oferece suporte?
O Firebase oferece suporte a até duas versões principais do Xcode, sem incluir versões do Xcode que a Apple não oferece mais suporte. Por exemplo, a partir de março de 2019, a Apple exigiu pelo menos iOS 12 em todos os aplicativos, o que significa que o suporte ao Xcode 9 foi abandonado e o Xcode 10 foi a única versão principal suportada.
As alterações no suporte para versões secundárias ou de patch específicas do Xcode (por exemplo, 9.2.0 a 9.4.1) são determinadas com base nas necessidades do SDK das plataformas Firebase Apple e em uma pesquisa de uso do desenvolvedor. Essas alterações são refletidas nas notas de versão do SDK das plataformas Apple do Firebase e na página de configuração do SDK das plataformas Apple do Firebase .
Para ver a versão mínima do Xcode suportada pelo SDK, verifique os requisitos listados em Adicione o Firebase ao seu projeto Apple .
O suporte do Firebase para versões Beta do Xcode está disponível com base no "melhor esforço". Os desenvolvedores podem rastrear e enviar problemas no repositório SDK das plataformas Apple do Firebase no GitHub .
Meu aplicativo solicita ao usuário a senha para acessar os itens das Chaves no macOS. Como faço para corrigir isso?
Atualize sua dependência do Firebase para a versão 9.6.0 ou superior e adicione o [recurso de compartilhamento de chaves](/docs/ios/troubleshooting-faq#macos-keychain-sharing) ao seu destino.
Por que o Firebase exige o recurso Keychain Sharing no macOS?
Os SDKs do Firebase usam chaves para armazenar informações como o ID de instalação do Firebase usado para FCM. Sem acesso às Chaves, os SDKs do Firebase podem não funcionar corretamente. O chaveiro do macOS se comporta de maneira diferente do chaveiro estilo iOS usado em outras plataformas (iOS, tvOS, macCatalyst e watchOS).
No macOS, os aplicativos usam chaves compartilhadas que podem ser modificadas por outros aplicativos e processos. Ao contrário do iOS, não há chaves em sandbox às quais o aplicativo tenha acesso implícito. Portanto, quando um aplicativo Mac interage com as chaves, o sistema solicita acesso ao usuário, pois o aplicativo Mac pode estar modificando um item das chaves que não criou. Para resolver essa discrepância, o Firebase consulta as chaves com a chave kSecUseDataProtectionKeychain
, que instrui o aplicativo a consultar um item de chaves que faz parte de um grupo de acesso de chaves (esse é o comportamento padrão em outras plataformas). O recurso Compartilhamento de Chaves é necessário porque o aplicativo precisa dele para sintetizar um grupo de acesso que pode ser compartilhado entre seus alvos, dando assim permissão para o aplicativo acessar livremente os itens das chaves no grupo de acesso.
Para obter mais informações, consulte a documentação das Chaves da Apple.
Nas versões 13 e posteriores do Xcode, por que meus aplicativos UIKit não podem abrir alguns URLs que registrei?
no meu Info.plist?
A Apple introduziu um limite de 50 entradas LSApplicationQueriesSchemes
em arquivos Info.plist
. Em 2015, a Apple introduziu LSApplicationQueriesSchemes
para limitar o número de consultas de URL que cada aplicativo poderia fazer. Com o lançamento do Xcode 13, esses limites são aplicados, enquanto no Xcode 12 e versões anteriores não havia limite efetivo para o número de esquemas.
Alguns produtos Firebase, como Firebase Authentication e Firebase Dynamic Links, exigem o uso de esquemas de URL personalizados para redirecionar para seu aplicativo. Esses URLs estão em conformidade com um esquema de URL conciso e consistente que não deve contar significativamente no limite do esquema de 50 links.
Observe que para aplicativos que continuam registrando mais de 50 LSApplicationQueriesSchemes
, alguns esquemas serão ignorados silenciosamente. O aplicativo pode não conseguir executar determinados links diretos, dependendo da ordem em que são adicionados.