Guia Completo para Autenticação de Terceiros no Flutter com Parse no Back4App
Integrar métodos de autenticação de terceiros como Facebook, Google e Apple em seu aplicativo Flutter pode melhorar significativamente a experiência do usuário, oferecendo opções de login flexíveis e convenientes. O Parse Server, alimentado pelo Back4App, oferece suporte integrado para esses provedores de autenticação. Neste tutorial, você aprenderá como implementar a autenticação de terceiros em seu aplicativo Flutter usando o SDK do Parse no Back4App.
Ao final deste tutorial, você terá um aplicativo Flutter com recursos de cadastro e login totalmente funcionais que incluem:
- Autenticação padrão por e-mail/senha usando o Parse.
- Métodos de autenticação de terceiros:
- Facebook
- Google
- Apple
Para acompanhar este tutorial, você precisará do seguinte:
- Um ambiente de desenvolvimento Flutter instalado em sua máquina. Siga este guia se precisar de ajuda para configurar o Flutter.
- Contas de desenvolvedor para Facebook, Google e Apple (necessárias para configurar métodos de login de terceiros).
- Um IDE ou editor de texto como Visual Studio Code ou Android Studio.
- Clique em "Criar novo App".
- Digite um nome para sua aplicação, por exemplo, "AuthDemo", e clique em "Criar".
- Uma vez que o projeto é criado, navegue até Configurações do App > Segurança e Chaves.
- Anote seu ID da Aplicação e Chave do Cliente. Você precisará desses valores para inicializar o Parse em seu aplicativo Flutter.
- No seu painel do Back4App, navegue até Configurações do Servidor > Autenticação.
- Habilite os métodos de autenticação que você pretende usar:
- Facebook
- Google
- Apple
- Para cada provedor, você precisará inserir credenciais específicas (IDs de App, IDs de Cliente, Segredos, etc.), que serão configuradas nos próximos passos.
Abra seu terminal e crie um novo projeto Flutter:
Abra pubspec.yaml e adicione as seguintes dependências para Parse e opções de login de terceiros:
Execute flutter pub get para instalar as dependências.
No arquivo lib/main.dart , importe o SDK do Parse e inicialize-o na função main :
- Substitua 'YOUR_APP_ID' e 'YOUR_CLIENT_KEY' pelas suas credenciais reais do Back4App da Etapa 1.
Crie um novo diretório chamado services sob lib e adicione um arquivo chamado auth_service.dart. Este serviço irá gerenciar o registro e login de usuários usando o Parse.
Crie um novo diretório chamado screens sob lib e adicione um arquivo chamado auth_screen.dart. Esta tela fornecerá a interface do usuário para autenticação padrão.
- Criar um aplicativo do Facebook:
- Clique em "Meus Aplicativos" e então "Criar Aplicativo".
- Selecione "Consumidor" como o tipo de aplicativo e clique em "Próximo".
- Preencha o Nome do App e Email de Contato, então clique em "Criar App".
- Adicione o Login do Facebook ao Seu App:
- No painel do seu aplicativo, navegue até "Adicionar um Produto" e selecione "Login do Facebook".
- Escolha "Android" e/ou "iOS" dependendo da sua plataforma alvo.
- Siga os passos de configuração fornecidos pelo Facebook. Você precisará do Identificador do Pacote para iOS e Nome do Pacote para Android.
- Configurar URI de Redirecionamento OAuth:
- Defina o OAuth Redirect URI para: https://parseapi.back4app.com/auth/facebook/callback
- Obtenha o ID do aplicativo e o segredo do aplicativo:
- No painel do seu aplicativo, vá para "Configurações" > "Básico".
- Anote o App ID e App Secret.
- Adicione o ID do App e o Segredo ao Back4App:
- No painel do Back4App, navegue até Configurações do Servidor > Autenticação.
- Sob Facebook, insira seu ID do App e Segredo do App.
Adicione o seguinte código para lidar com a autenticação do Facebook:
Adicione o seguinte botão à sua interface:
- Atualize seu android/app/src/main/AndroidManifest.xml:
- Adicione seu ID do App do Facebook a android/app/src/main/res/values/strings.xml:
- Atualize seu Info.plist arquivo:
- Criar um Projeto no Google Cloud Console:
- Configurar a Tela de Consentimento do OAuth:
- Navegue até APIs & Serviços > Tela de consentimento do OAuth.
- Configure a tela de consentimento com os escopos necessários.
- Criar ID do Cliente OAuth:
- Vá para Credenciais > Criar Credenciais > ID do cliente OAuth.
- Escolha Aplicativo da Web.
- Adicione URIs de redirecionamento autorizados: https://parseapi.back4app.com/auth/google/callback
- Anote o ID do Cliente e Segredo do Cliente.
- Adicione o ID e o Segredo do Cliente ao Back4App:
- No painel do Back4App, em Configurações do Servidor > Autenticação, insira seu ID do Cliente e Segredo do Cliente para o Google.
Adicione o seguinte código para lidar com a autenticação do Google:
Adicione o seguinte botão à sua interface:
- Adicione o seguinte ao seu android/app/build.gradle arquivo:
- Adicione seu ID de Cliente do Google a android/app/src/main/res/values/strings.xml:
- Atualize seu android/app/src/main/AndroidManifest.xml:
- Adicione o ID do cliente revertido ao seu Info.plist:
- Registrar seu aplicativo:
- Ativar Login com a Apple:
- Em Identificadores, selecione seu aplicativo e ative Login com a Apple.
- Criar um ID de Serviços:
- Crie um ID de Serviços para seu aplicativo.
- Defina a URI de Redirecionamento para: https://parseapi.back4app.com/auth/apple/callback
- Gerar um Client Secret:
- Crie uma chave privada para Login com a Apple.
- Use esta chave para gerar um Client Secret.
- Adicionar Credenciais ao Back4App:
- No painel do Back4App, em Configurações do Servidor > Autenticação, insira seu ID de Serviços e Client Secret para a Apple.
Adicione o seguinte código para lidar com a autenticação da Apple:
Adicione o seguinte botão à sua interface:
- No Xcode, abra seu projeto e vá para Assinatura e Capacidades.
- Clique em "+ Capacidade" e adicione "Login com Apple".
- Certifique-se de que seu Identificador do Pacote corresponda ao registrado no Portal de Desenvolvedores da Apple.
Agora que você configurou todos os métodos de autenticação, pode executar seu aplicativo e testar cada opção de login.
- Para iOS, você deve executar o aplicativo em um dispositivo real para testar o Login com Apple.
- Para Android, você pode usar um emulador ou um dispositivo físico.
- Digite um nome de usuário, e-mail e senha.
- Toque em "Cadastrar" para criar um novo usuário.
- Toque em "Login" para entrar com as credenciais criadas.
- Toque "Login com Facebook".
- Uma tela de login do Facebook aparecerá.
- Faça login com suas credenciais do Facebook.
- Toque "Login com Google".
- Uma tela de login do Google aparecerá.
- Faça login com sua conta do Google.
- Toque "Login com Apple".
- O prompt de login da Apple aparecerá.
- Autentique-se usando seu ID Apple.
Neste tutorial, você implementou com sucesso a autenticação padrão de email/senha e integrou métodos de autenticação de terceiros (Facebook, Google e Apple) em seu aplicativo Flutter usando o Parse SDK no Back4App. Essa configuração melhora a experiência do usuário ao oferecer várias opções de login convenientes.
- Perfis de Usuário: Amplie o aplicativo para gerenciar perfis de usuário, permitindo que os usuários atualizem suas informações.
- Funcionalidade de Logout: Implemente recursos de logout para cada método de autenticação.
- Segurança de Dados: Proteja seus dados implementando controle de acesso baseado em funções com ACLs e Funções do Parse.
- Tratamento de Erros: Melhore o tratamento de erros para fornecer feedback mais detalhado aos usuários.
- Melhorias na UI: Personalize a UI para combinar com a marca do seu aplicativo e melhorar a experiência do usuário.
Feliz Codificação!