Este arquivo tem funcionalidades muito importantes para os nossos aplicativos, é com ela que temos a possibilidade de manter a sessão do nosso usuário logado na aplicação, com isso podendo redirecionar para as telas corretas e realizar chamadas para o backend.
Fazendo o uso do plugin shared_preferences, conseguimos salvar o token do usuário logado, remover caso necessário, requisitar este token para algum uso, e verificar se existe algum token salvo no momento.
Quando o usuário faz o login na aplicação, devemos salvar o token dele, utilizando:
Com isso, sempre que fizermos a requisição da chamada await Authentication.authenticated(), a resposta vai ser true, pois existe um token salvo para o usuário no celular que ele está.
A função de logout, apenas vai remover este token salvo, fazendo com que quando requisitado o authenticated a resposta seja false.
E o getToken serve para retornar o token salvo, caso exista, para o uso que desejar.
Esta manutenção do token do usuário serve principalmente para dois pontos:
- Checagem na splash screen, para saber se o usuário deve ser redirecionado para a tela de autenticação ou pode acessar o aplicativo
- Usar o token para mandar nas requisições da API.