skip to Main Content

I’m going through a weird behavior using the signInWithEmailAndPassword method of firebase_auth

the try catch block should catch if an error is thrown but a PLatformException flows up in the editor like I did call a normal async/await method without catching errors :

the weird thing is that I already used the same code in a previous project and it’s working fine, I did the same configuration, and it’s working fine with correct auth data, just if there is an error it doesn’t catch it
my code :

  Future handleLoginProcess(BuildContext context) async {

_handleInputsCases();
_startLoading();
try {
  await FirebaseAuth.instance.signInWithEmailAndPassword(
      email: "[email protected]", password: "SuperSecretPassword!");
} on FirebaseAuthException catch (e) {
  print('Failed with error code: ${e.code}');
  print(e.message);
}
_endLoading();

}

the thrown error seem to direct me to this:

if (errorCode is String && (errorMessage == null || errorMessage is String) && !buffer.hasRemaining) {
  throw PlatformException(code: errorCode, message: errorMessage as String?, details: errorDetails, stacktrace: errorStacktrace);
} else {
  throw const FormatException('Invalid envelope');
}

I’m missing something, what are the possible reasons to this, is it something related to vscode?

please share your ideas with me, thanks

3

Answers


  1. If this code working well in your another project. then you should check SDK Version of both projects. You can find SDK version in YAML file.

    Login or Signup to reply.
  2. Check your flutter implementation too.

    In pubspec.yaml

    firebase_auth: ^3.11.2
    

    Code

        Future loginWithUserEmail({@required String email, @required String password}) async{
        try{
          var userCredential = await _firebaseAuth.signInWithEmailAndPassword(
              email: email,
              password: password
          );
          //await _populateCurrentUser(userCredential.user);
          return userCredential.user != null;
        }catch(error){
          return error.toString();
        }
      }
    
    Login or Signup to reply.
  3. When i went through this error the only solution i found was to create a whole new project on Firebase, on Google console and on my computer.

    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search