Pra muitos é mais um ToDo. Pra mim é uma conquista e um compartilhamento.
Abordei o meu entendimento de V-VM-M, Estrutura, e aceito sugestões.
Construi um fluxo de authenticação bem interessante e genérico como visto no item Authentication
As contribuições/fontes para este ToDo estão nesta minha historia no Medium.
Este ToDo é uma versão atualizada do Todo01 e todo02 tentando colocar o isar. mas deram alguns erros e vou parar o projeto. Contudo o desenvolvimento do login dele ficou muito bom e vou atualizar no todo02
https://console.firebase.google.com/u/0/project/todo-getx-isar-fa-ff/overview
- Aplicativo
- Android
- [] Web
- Authentication
- Emai/Senha
- Firestore
- Hosting
- Storage
Analise e adaptação, a View - ViewModel - Model, destes textos:
- http://kyubid.com/blog/mvvm-android-tutorial-01-mvc-vs-mvp-vs-mvvm/
- https://pub.dev/packages/flutter_clean_architecture
- https://medium.com/@ajliberatore/android-clean-architecture-mvvm-4df18933fa9
- https://medium.com/@fahrizalfms/sample-android-project-mvvm-clean-architecture-with-coroutines-tips-a4d1b43b3583
O Fluxo de autenticação segue esta abordagem:
- Usuário acessa ao aplicativo e splash.page analisa sua situação. Se estiver logado vai para home.page.
- Usuário acessa ao aplicativo e splash.page analisa sua situação. Se não estiver logado vai para login.page.
- Usuário informa email/senha e se cadastrado e informações adicionais regularizadas e vai para home.page.
- Usuário informa provedor de acesso e se cadastrado e informações adicionais regularizadas vai para home.page.
- Se solicitar cadastrar email/senha para acesso vai para methodEmailSenha.page.
- Após informar email/senha para cadastro se existir informações adicionais segue para UserAdditionalInfo.page.
- Usuário informa email/senha e se cadastrado e informações adicionais irregulares vai para UserAdditionalInfo.page.
- Usuário informa provedor de acesso e se cadastrado e informações adicionais irregulares vai para UserAdditionalInfo.page.
- Registrada as informações adicionais se não houver analise vai para home.page.
- Registrada as informações adicionais se houver analise vai para UserAnalyzingInfo.page. E espera-se liberação dos administradores do app.
Conforme apresentado acima seguem as telas
login.page | b |
---|---|
![]() |
![]() |
![]() |
![]() |
![]() |