gpt4 book ai didi

android - 使用错误的验证码进行身份验证时出现异常

转载 作者:太空狗 更新时间:2023-10-29 16:27:10 24 4
gpt4 key购买 nike

我正在使用 Firebase Phone Authentication 来验证用户帐户。当我尝试使用错误的验证码进行身份验证时,我收到 IllegalArgumentException。有没有什么方法可以在不使用 try catch block 的情况下解决这个问题?

这是异常消息:

java.lang.IllegalArgumentException: Cannot create PhoneAuthCredential without either verificationProof, sessionInfo, or temporaryProof.
at com.google.android.gms.common.internal.zzbq.checkArgument(Unknown Source)
at com.google.firebase.auth.PhoneAuthCredential.<init>(Unknown Source)
at com.google.firebase.auth.PhoneAuthProvider.getCredential(Unknown Source)
at com.example.myApp.testFragment$3$4.onClick(testFragment.java:316)
at android.view.View.performClick(View.java:5197)
at android.view.View$PerformClick.run(View.java:20926)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:145)
at android.app.ActivityThread.main(ActivityThread.java:5951)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1400)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1195)

这是我收到错误的行:

PhoneAuthCredential credential = PhoneAuthProvider.getCredential(verificationCode, inputCode);

我故意在 inputCode 中使用错误的验证码,希望得到错误消息而不是异常。

最佳答案

它返回一个异常,所以目标应该是捕获它在调试控制台中抛出的异常。为此,我将该代码的一部分包装在一个 try catch 中,然后将其 Toast 出来供目标用户查看,而不是最终用户看不到的常见崩溃。

像这样...

private void verifyCode(String code) {
try {
PhoneAuthCredential credential = PhoneAuthProvider.getCredential(verificationId, code);
signInWithCredential(credential);
}catch (Exception e){
Toast toast = Toast.makeText(this, "Verification Code is wrong", Toast.LENGTH_SHORT);
toast.setGravity(Gravity.CENTER,0,0);
toast.show();
}

}

关于android - 使用错误的验证码进行身份验证时出现异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48118488/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com