我已经在Flutter应用程序中实现了Firebase OTP,但仍然存在以下错误:
E/FirebaseAuth( 7053): [SmsRetrieverHelper] SMS verification code request failed: unknown status code: 17006 null
I/flutter ( 7053): [firebase_auth/operation-not-allowed] The given sign-in provider is disabled for this Firebase project. Enable it in the Firebase console, under the sign-in method tab of the Auth section.
字符串
它的工作正常的大多数电话号码。我得到这个问题主要是'科威特'为基础的电话号码。
- 我已启用“电话号码”作为登录选项
- 更新了SHA1和SHA256证书指纹。
- 已尝试清除用户帐户列表,以防任何号码被阻止。我的代码:
Future<void> sendOTP(String number) async {
await FirebaseAuth.instance.verifyPhoneNumber(
phoneNumber: countryCode+number,
timeout: const Duration(seconds: 20),
verificationCompleted: (PhoneAuthCredential credential) {
print("Auth Completed!");
},
verificationFailed: (FirebaseAuthException e) {
print("Auth Failed!");
print(e);
},
codeSent: (String verificationId, int? resendToken) {
print("OTP Sent!");
verID = verificationId;
return;
print(verID);
},
codeAutoRetrievalTimeout: (String verificationId) {
print("Timeout!");
},
);
型
}
我该如何解决此问题?如果你能帮忙的话,我将不胜感激。
2条答案
按热度按时间uoifb46i1#
检查表:
1.不要重复使用同一个号码,如果你想这样做,在firebase控制台中将其添加到测试号码。
1.禁用所有其他认证方法,如谷歌/电子邮件登录。
1.在添加sha1/sha 256后再次下载.json/.plist文件。
iyfamqjs2#
错误明确地说:- 在firebase的验证部分下启用电话验证