Como utilizar o Firebase com Flutter — FlutterFire (Parte 2)
FlutterFire Auth — Email/Password
Depois de configurar o projecto como um todo, é altura de colocar na prática alguns dos recursos oferecidos pelo firebase.
Para dar início iremos olhar para o Firebase Auth que permite aos utilizadores criarem contas e acederem às nossas aplicações por meio de um serviço de autenticação já criado pelo firebase, reduzindo a necessidade de criar um serviço de backend do zero para controle de acesso às mesmas.
Este artigo é parte de uma série de artigos relacionados ao FlutterFire que conta com os seguintes artigos:
- Como utilizar o Firebase com Flutter (Introdução — Configurando o FlutterFire)
- Como utilizar o Firebase com Flutter (FlutterFire Auth — Email/Password) (este artigo)
- Como utilizar o Firebase com Flutter (FlutterFire Auth — Phone)
- Como utilizar o Firebase com Flutter (FlutterFire Auth — Social(Google))
- Como utilizar o Firebase com Flutter (Cloud Firestore)
Inicializando o FlutterFire Auth
Para usar o FlutterFire Auth como qualquer outro serviço do firebase é importante antes de mais nada incluir o plugin nas dependências do projecto
dependencies:
flutter:
sdk: flutter
firebase_core: ^x.x.x
firebase_auth: ^x.x.x
e correr o
$ flutter pub get
para poder usar em seu projecto e então ter acesso às funções para autenticação do utilizador.
FirebaseAuth auth = FirebaseAuth.instance;
Para este artigo serão abordados 3 funções:
- Registo de conta
Como foi dito anteriormente, toda a estrutra para verificação e validação é feita do lado do firebase, bastando para o desenvolvedor flutter com recurso ao FlutterFire fazer uso da resposta retornada pelo Firebase.
Usando um try e invocando especificamente o FirebaseAuthException conseguimos ter acesso às possíveis Excepctions, assim temos menos que nos preocupar com o controle de credenciais inseridos com o utilizador, apenas validações de texto de modo a não “quebrar” a app nalgum momento e usar da resposta para criar mensagens de feedback para o utilizador.
2. Login
3. Validação de email
Este ponto está integrado no código partilhado nos pontos (1.) e (2.), permitindo validar se o utilizador realmente tem acesso ao email fornecido, tornando o controlo de acesso à aplicação mais fiel possível.
//enviar o email de verificação caso não tenha sido enviado um
if (!isEmailVerified())) {
await user.sendEmailVerification();}//verificar o estado de validação do email
bool isEmailVerified() {
User user = auth.currentUser;
return user.emailVerified;
}
E temos como nossa tela previamente partilhada nos diversos estados passados, consoante a resposta obtida do serviço do firebase com a seguinte estrutura:
O projecto pode ser encontrado no github, espero que tire proveito do mesmo e contribua com melhorias em qualquer aspecto.
Espero que tenha aprendido com este artigo e que se tenha divertido enquanto lia.
Obrigado por acompanhar até ao fim e espero por você no próximo artigo.
Para questões e sugestões esteja a vontade para tal nos comentários, email igorlsambo1999@gmail.com ou twitter @lsambo02.
Obrigado e até ao próximo artigo!!!