Sou iniciante e no app tenho apos logado a home, estas implementações coloco nesta homeScreen? pois preciso pegar o uid do firebaseauthentication e gravar no mysql php (api), aqui está tudo no Main, o que preciso mudar para funcionar?
Sou iniciante e no app tenho apos logado a home, estas implementações coloco nesta homeScreen? pois preciso pegar o uid do firebaseauthentication e gravar no mysql php (api), aqui está tudo no Main, o que preciso mudar para funcionar?
Fala, Gerson! Tudo certo?
Sim, o ideal é que você modularize seu código e remova essa lógica do main.dart
. Aqui está um direcionamento para estruturar melhor:
Pegando o uid
do usuário logado
Você pode obter o uid
da pessoa usuária autenticada com o código a seguir, a partir de qualquer parte da aplicação:
String? uid = FirebaseAuth.instance.currentUser?.uid;
O uso de ?.
evita erros caso a pessoa usuária ainda não tenha feito login. Se precisar garantir que está autenticado antes de prosseguir:
if (FirebaseAuth.instance.currentUser != null) {
String uid = FirebaseAuth.instance.currentUser!.uid;
}
Organizando seu código
Em vez de manter tudo no main.dart
, uma estrutura básica poderia ser:
lib/
├── screens/
│ ├── home_screen.dart
├── services/
│ ├── api_service.dart
├── main.dart
home_screen.dart
: Apenas a UI da tela inicial. api_service.dart
: Funções para comunicação com o MySQL via API. main.dart
: Apenas configurações iniciais e roteamento.Se quiser aprofundar mais no uso do Firebase Authentication com Flutter, recomendo este curso na Alura.
Bons estudos!