📚 Pré-requisitos Teóricos: este projeto aplica conceitos ensinados em Especialização em Flutter. Recomendado revisar antes de começar.
v4.0 — Flutter 3, Dart, Autenticação Biométrica (TouchID/FaceID), Firebase FCM e Secure Storage
Trilha de Especialização Pedagógica — Projeto 4 de 4
- v1: App Financeiro · Flutter 3 · Provider · Material 3
- v2: Clean Architecture · BLoC Pattern · GetIt · Dartz
- v3: App Offline-First com Banco NoSQL Hive & Sincronização
- ➡️ v4 (este): Super-App Omnichannel · Biometria Nativas · Push FCM · Keystore Criptografada
🎓 Nível Profissional Simulado: Arquiteto Mobile / Tech Lead Flutter. O estágio mais avançado do desenvolvimento mobile envolve segurança de nível bancário (biometria via Hardware Enclave), armazenamento seguro de chaves criptográficas (
flutter_secure_storage) e mensageria em nuvem com Firebase Cloud Messaging (FCM).
—`
Construir o Super-App Omnichannel Corporativo em Flutter 3, implementando fluxo de login por biometria nativa com local_auth, guarda de tokens JWT no cofre de segurança criptografado do sistema operacional (Keystore no Android e Keychain no iOS) e recepção de notificações Push com Firebase Cloud Messaging.
—`
“Nosso aplicativo de pagamentos precisa eliminar senhas em texto puro. O usuário deve desbloquear a carteira usando o leitor de digital ou reconhecimento facial do smartphone. Os tokens de autenticação devem ser salvos em cofre criptografado de hardware e o app deve receber alertas de transações suspeitas via Push Notification em segundo plano.”
| ID | Tipo | Descrição | Origem no Briefing |
|---|---|---|---|
| RF01 | Funcional | Autenticar usuário via Biometria nativa (TouchID/FaceID/Impressão Digital) com local_auth. |
“desbloquear usando leitor de digital” |
| RF02 | Funcional | Armazenar tokens de sessão na Keystore/Keychain criptografada via flutter_secure_storage. |
“cofre criptografado de hardware” |
| RF03 | Funcional | Configurar receptor de notificações Push FCM em foreground e background. | “alertas de transações suspeitas” |
| RNF01 | Não-Funcional | Conformidade com padrões de segurança bancária e criptografia AES-256 no armazenamento. | Segurança Mobile |
| RNF02 | Não-Funcional | Fallback seguro para PIN caso o hardware biométrico não esteja disponível. | Usabilidade |
—`
| ID | User Story | Prioridade |
|---|---|---|
| US01 | Como correntista, quero entrar no app em 1 segundo tocando o dedo no leitor biométrico. | Alta |
| US02 | Como cliente, quero receber alertas instantâneos no celular quando uma compra for realizada. | Alta |
—`
# Branch da funcionalidade
git checkout -b feature/US01-superapp-biometria-fcm
# Executar no dispositivo fisico ou emulador
flutter run
—`
main.dart)Future<void> _autenticar() async {
final didAuth = await auth.authenticate(
localizedReason: 'Por favor, confirme sua identidade para acessar o Super-App',
options: const AuthenticationOptions(biometricOnly: true),
);
if (didAuth) {
await storage.write(key: 'jwt_token', value: 'token_seguro_criptografado_xyz');
}
}
—`
No seu editor/IDE, abra a pasta deste projeto (File > Open Folder) ou navegue via terminal:
cd mobile_flutter_04_omnichannel_push
flutter pub get
flutter run
flutter test
[!TIP] Dica para execução a partir da raiz do repositório: Se você abriu o repositório completo no VS Code, basta navegar até a pasta antes de executar: cd proj_aplicacoes_full_stack/projetos/mobile_flutter_04_omnichannel_push`
—`
adb emu finger touch 1) valida a liberação do cofre criptografado com sucesso.—`
- Autenticação biométrica integrada com
local_auth.flutter_secure_storageblindando os tokens de sessão.
| ⬅️ Ver Todos os Projetos no Super-Hub | 🏠 Página Inicial do Portal |