如何获取SignInClient.beginSignIn在addOnFailureListener中的异常列表?
Google One Tap登录失败回调中的异常类型及获取方式
常见的异常类型
- UnsupportedApiCallException:当前设备系统版本或Google Play服务版本不支持该API调用
- ApiException:通用的API请求错误,可通过
exception.getStatusCode()获取具体错误码(如登录失败、网络错误、用户取消等) - IntentSender.SendIntentException:启动登录验证Intent时出现的系统级异常,比如系统无法处理该Intent请求
- IllegalStateException:调用时机不符合要求,比如在Activity已销毁、未绑定生命周期的情况下调用
beginSignIn
获取完整异常列表的方法
- Android Studio代码提示与跳转:在
addOnFailureListener的exception参数上,右键选择"Go to Implementation",或直接查看Exception的子类,IDE会展示所有可能被传递的异常类型 - 查看SDK源码:定位到
SignInClient.beginSignIn方法的具体实现,源码中会明确回调中可能抛出的异常类型 - 运行时捕获日志:在失败回调中添加日志打印,输出异常的完整类名:
模拟各种异常场景(如断网、设备未安装Google Play服务、用户中途取消等),收集所有出现的异常类型addOnFailureListener(requireActivity(), exception -> { Log.e("OneTapSignIn", "Exception class: " + exception.getClass().getName()); // 其他处理逻辑 }); - 查看本地Javadoc:选中
beginSignIn方法,按Ctrl+Q(Windows)或Cmd+Q(Mac)查看方法的官方注释,部分异常类型会在注释中标注
内容的提问来源于stack exchange,提问作者Shout
相关产品推荐
相关产品推荐

