J'ai ce problème lors de la connexion avec Firebase, je ne sais pas comment le résoudre. Veuillez aider, merci.
le code de ma fonction de connexion est comme:
[VERBOSE-2:ui_dart_state.cc(148)] Unhandled Exception: MissingPluginException(No implementation found for method createUserWithEmailAndPassword on channel plugins.flutter.io/firebase_auth) #0 MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:300:7) <asynchronous suspension> #1 FirebaseAuth.createUserWithEmailAndPassword (package:firebase_auth/src/firebase_auth.dart:108:54) <asynchronous suspension> #2 _LoginPageState.signUp (package:pdc/Pages/Setup/signIn.dart:78:55) <asynchronous suspension> #3 _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:511:14) #4 _InkResponseState.build.<anonymous closure> (package:flutter/src/material/ink_well.dart:566:30) #5 GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:166:24) #6 TapGestureRecognizer._checkUp (package:flutter/src/gestures/tap.dart:240:9) #7 TapGestureRecognizer.handlePrimaryPointer (package:flutter/src/gestures/tap.dart:177:9) #8 PrimaryPointerGestureRecognizer.handleEvent (package:flutter/src/gestures/recognizer.dart:436:9)
}
et mon docteur flutter est comme:
Future<void> signUp() async{ if(_formKey.currentState.validate()){ _formKey.currentState.save(); FirebaseUser user = await FirebaseAuth.instance.createUserWithEmailAndPassword(email: _email, password: _password); Navigator.push(context, MaterialPageRoute(builder: (context)=> Home(user: user))); } }
la sortie de l'erreur est comme:
[VERBOSE-2:ui_dart_state.cc(148)] Unhandled Exception: MissingPluginException(No implementation found for method signInWithCredential on channel plugins.flutter.io/firebase_auth) 0 MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:300:7) <asynchronous suspension> 1 FirebaseAuth.signInWithCredential (package:firebase_auth/src/firebase_auth.dart:278:54) <asynchronous suspension> 2 FirebaseAuth.signInWithEmailAndPassword (package:firebase_auth/src/firebase_auth.dart:249:12) 3 _LoginPageState.signIn (package:pdc/Pages/Setup/signIn.dart:62:57) <asynchronous suspension> 4 _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:511:14) 5 _InkResponseState.build.<anonymous closure> (package:flutter/src/material/ink_well.dart:566:30) 6 GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:166:24) 7 TapGestureRecognizer._checkUp (package:flutter/src/gestures/tap.dart:240:9) 8 TapGestureR<â¦>
Cela se produit à la fois sur mon appareil et sur le simulateur IOS, et je ne l'ai pas essayé sur Android. J'ai déjà essayé le flutter clean, démarrer un nouveau projet et mettre à niveau les cocoaPods. Mais aucun d'entre eux n'est utile à mon cas. Merci pour l'aide.
Il semble que chaque fois que j'essaierai de faire quelque chose avec Firebase, cela me posera ce genre de question. J'ai écrit un code pour m'inscrire comme ceci:
[â] Flutter (Channel master, v1.4.20-pre.2, on Mac OS X 10.14.4 18E226, locale zh-Hans-CN) [â] Android toolchain - develop for Android devices (Android SDK version 28.0.3) [â] iOS toolchain - develop for iOS devices (Xcode 10.2) [!] Android Studio (version 3.3) â Flutter plugin not installed; this adds Flutter specific functionality. â Dart plugin not installed; this adds Dart specific functionality. [â] IntelliJ IDEA Ultimate Edition (version 2018.1.8) [â] VS Code (version 1.33.1) [â] Connected device (1 available)
La sortie de mon code est
Future<void> signIn() async{ final formState = _formKey.currentState; if(formState.validate()){ //TODO login to firebase formState.save(); try{ FirebaseUser user = await FirebaseAuth.instance.signInWithEmailAndPassword(email: _email, password: _password); Navigator.push(context, MaterialPageRoute(builder: (context)=> Home(user: user))); }catch(e){ print(e.details); } }
Et je suis sûr que j'ai terminé la configuration de Firebase et connecté avec succès l'application Flutter avec Firebase.
3 Réponses :
Je pense que vous devez exécuter les packages get & upgrade. Si vous utilisez Android Studio, vous pouvez simplement aller dans votre fichier pubspeck.yaml et deux boutons apparaîtront dans le coin supérieur droit ou vous pouvez simplement utiliser votre terminal.
Merci pour vos conseils, je pensais avoir essayé cette solution, et je viens de les exécuter à nouveau, mais cela n'a pas fonctionné pour moi, j'ai toujours la même erreur.
J'ai eu beaucoup de mal à faire fonctionner Firebase. Je pense que cela devrait être VRAIMENT facile, car Flutter et Firebase sont des produits Google. Quoi qu'il en soit, j'ai dû utiliser ce code pour le fichier AppDelegate.m
sous iOS:
#include "AppDelegate.h" #include "GeneratedPluginRegistrant.h" @import UIKit; @import Firebase; @implementation AppDelegate - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { [FIRApp configure]; [GeneratedPluginRegistrant registerWithRegistry:self]; return [super application:application didFinishLaunchingWithOptions:launchOptions]; // YES; } @end
Avez-vous déjà essayé quelque chose comme ça?
Des suggestions pour AppDelegate.swift?
J'ai eu le même problème et je l'ai résolu en mettant à jour le package firebase_auth.
si vous jour la version de votre package sera plus utile.
la solution dans mon cas est: Fichier -> Invalidate Caches / Restart ... -> Invalidate and Restart