verifyNumber method

Future<void> verifyNumber(
  1. String phoneNumber, {
  2. bool signInOnAutoRetrieval = true,
  3. int timeoutSeconds = 30,
  4. PhoneCodeSent? codeSent,
  5. PhoneCodeAutoRetrievalTimeout? codeAutoRetrievalTimeout,
  6. PhoneVerificationCompleted? verificationCompleted,
  7. PhoneVerificationFailed? verificationFailed,
})

Implementation

Future<void> verifyNumber(String phoneNumber,
    {bool signInOnAutoRetrieval = true,
    int timeoutSeconds = 30,
    PhoneCodeSent? codeSent,
    PhoneCodeAutoRetrievalTimeout? codeAutoRetrievalTimeout,
    PhoneVerificationCompleted? verificationCompleted,
    PhoneVerificationFailed? verificationFailed}) async {
  assert(phoneNumber != null && phoneNumber.length > 1);

  _firebaseAuth.verifyPhoneNumber(
    phoneNumber: phoneNumber,
    timeout: Duration(seconds: timeoutSeconds),
    codeSent: (String verificationId, [int? forceResendingToken]) {
      _verificationId = verificationId;

      codeSent!(verificationId, forceResendingToken);
    },
    codeAutoRetrievalTimeout: (String verificationId) {
      _verificationId = verificationId;

      codeAutoRetrievalTimeout!(verificationId);
    },
    verificationCompleted: (AuthCredential phoneAuthCredential) {
      _credential = phoneAuthCredential;

      verificationCompleted!(phoneAuthCredential as PhoneAuthCredential);
      if (signInOnAutoRetrieval) {
        signIn();
      }
    },
    verificationFailed: (FirebaseAuthException error) {
      print(error.code);
      print(error.message);

      verificationFailed!(error);
    },
  );
}