Login com a Apple usando Flutter e Firebase

Leonardo Cardoso
Luna
Published in
2 min readMay 8, 2020

Neste tutorial, veremos como adicionar o Apple Sign a um aplicativo utilizando Flutter e o Firebase.

Este tutorial assume que você seja já seja um desenvolvedor Apple Developer e já tenha configurado o Firebase no seu aplicativo.

Desde de abril de 2020, todos os aplicativos iOS nativos que oferecem métodos de autenticação social (Google, Facebook, etc.) DEVEM incluir também o Apple Sign In como uma opção. Veja as orientações oficiais da Apple.

Aqui na Luna nós já sofremos com isso quando fomos subir nosso app na Apple Store 🤭🤣

Pré-requisitos

  • Xcode 11 instalado
  • Uma conta de desenvolvedor da Apple
  • Um dispositivo ou simulador iOS 13.x, conectado com um ID Apple

Setup

Instale as dependências

Instale o pacote apple_sign_in no seu projeto (e é claro, firebase_auth).

dependencies:   
firebase_auth: ^0.15.3
apple_sign_in: ^0.1.0

Adicione a capacidade no Xcode

Adicione o recurso Sign In with Apple no Xcode. Certifique-se de incluí-lo em todos os seus tipos de construção.

Habilite no Firebase

Habilite o método de autenticação da Apple no Firebase. Não se preocupe com o fluxo do OAuth, ele é necessário apenas para aplicativos da web.

Vamos para o código

AuthService

O serviço de autenticação fornece um método signInWithApple que irá abrir a opção do usuário se autenticar com seu ID Apple. Depois que o usuário entra na Apple, o token é usado para criar um AuthCredential para fazer login como um FirebaseUser.

Botando em prática

Só devemos mostrar o botão Fazer login com a Apple quando estiver disponível no dispositivo. Use um FutureBuilder para verificar a disponibilidade e, em seguida, mostre o botão já criado no pacote apple_sign_in.

Com apenas esses pequenos passos você já consegue ter seu Login com Apple funcionando no seu aplicativo!

Gostou do conteúdo?

Siga a Luna no Medium. E não se esqueça de deixar alguns aplausos 👏🏽Qualquer dúvida ou sugestão é só deixar nos comentários!

--

--