Firebase PhoneAuth无法正常运行(虽然其他Auth方法有效)Android

时间:2018-12-23 18:03:53

标签: android firebase firebase-authentication

在Firebase控制台上,我确保已启用登录方法SHA-1进行调试和发布,包括软件包名称正确。但是,虽然其他登录方法(例如电子邮件,Google登录,匿名)正在运行。它总是在phoneAuth方法上给我一个FirebaseAuthException:

  

此应用无权使用Firebase身份验证,请   验证正确的程序包名称和SHA-1。

我正在使用带有活动SIM卡的真实设备。尝试添加短信和电话权限,但仍然无法正常工作。即使我正在使用documentation(+1 650-555-3434)中的测试电话号码,

下面是我的代码:

private void phoneVerification(String phoneNumber) {
        PhoneAuthProvider.getInstance().verifyPhoneNumber(
                phoneNumber,
                60,
                TimeUnit.SECONDS,
                this,
                new PhoneAuthProvider.OnVerificationStateChangedCallbacks() {

                    @Override
                    public void onVerificationCompleted(PhoneAuthCredential credential) {
                        Log.e(TAG, "onVerificationCompleted : " + credential.getSmsCode());
                    }

                    @Override
                    public void onVerificationFailed(FirebaseException e) {
                        Log.e(TAG, "onVerificationFailed : " +  e.toString());
                        if (e instanceof FirebaseAuthInvalidCredentialsException) {
                        } else if (e instanceof FirebaseTooManyRequestsException) {
                            Log.e(TAG, "Quota exceeded.");
                        }
                    }

                    @Override
                    public void onCodeSent(String verificationId,
                                           PhoneAuthProvider.ForceResendingToken forceResendingToken) {
                        Log.e(TAG, "onCodeSent : " + verificationId);
                    }
                });
    }

修改

在遇到一些试验错误之后,我发现问题不是出自SHA-1或软件包。其原因是没有将该号码列入白名单或使用文档中的相同号码(+1 650-555-3434)。

我的问题是:

  1. 是否可以在调试或发布期间使用真实电话号码,而无需 首先在Firebase控制台上将其列入白名单?
  2. 或者如果此电话验证仅允许非白名单号码, 应用来自Play商店?

0 个答案:

没有答案