IamVariable
IamVariable

Reputation: 446

Firebase phone auth not initiating OTP only in release mode but works on Debug mode even after added sha1 for release mode

Steps how I implemented.

As advised, I implemented all the way. It was quite good in debug mode. Unfortunately its not working in release mode even I added my debug and release sha1 keys in firebase console.

Step 1. Coding part is here

final PhoneVerificationCompleted verificationCompleted =
    (PhoneAuthCredential user) {
  successMessage('Your phone number verified successfully!');
  _loginNotifier.validate();
};

 final PhoneVerificationFailed verificationFailed = (FirebaseAuthException authException) {
  errorMessage('Phone number verification failed. Code: ${authException.code}. Message: ${authException.message}');
  print(
      'Phone number verification failed. Code: ${authException.code}. Message: ${authException.message}');
};

 final PhoneCodeAutoRetrievalTimeout codeAutoRetrievalTimeout =
    (String verificationId) {
  this._verificationId = verificationId;
  print("time out");
};

 firebaseAuth = FirebaseAuth.instance;
firebaseAuth.verifyPhoneNumber(
    phoneNumber: '+$_phoneWithCC',
    timeout: const Duration(seconds: 60),
    verificationCompleted: verificationCompleted,
    verificationFailed: verificationFailed,
    codeSent: codeSent,
    codeAutoRetrievalTimeout: codeAutoRetrievalTimeout);

Step 2: Here is the firebase console sha1 keys for debug and release mode

Added all three different sha1 keys but still not working:(

Error I am getting:

As I said, in debug mode all good as expected But in release mode, after initiating the otp function, immediately PhineVerificationFailed with null message and null code.

If still anything I missed please advice. Thanks all

Upvotes: 7

Views: 2157

Answers (4)

Rizwan Raza
Rizwan Raza

Reputation: 19

For my case I was just missing the 'Andoid Device Verification' API for my Firebase project from Google Cloud.

https://console.cloud.google.com/apis/library/androidcheck.googleapis.com?project={put_your_project_name_here}

Upvotes: 0

Akram
Akram

Reputation: 2198

Besides adding sha256 and SHA1, you need to add your email in the Firebase console. See the attached image.

enter image description here

Upvotes: 1

Mr Random
Mr Random

Reputation: 2218

After adding SHA1 you have to reinstall your app from Google Play.

Upvotes: 0

abhijat_saxena
abhijat_saxena

Reputation: 970

Apart from SHA1 - you also need SHA256 thumbprint for release apk.
I faced similar issue for firebase google authentication.
Can you add SHA256 thumbprint to firebase project console and try again ?

Upvotes: 6

Related Questions