Firebase Auth调用耗时过长问题求助(Android端)
针对你遇到的Firebase Auth所有调用(如authInstance.currentUser、authInstance.signInWithCredential、PhoneAuthProvider.verifyPhoneNumber)首次请求耗时3-5分钟、缓存后恢复正常,且升级BOM版本至32.6.0仍未解决的问题,可按以下方向排查:
网络连通性排查
确认设备/服务器所在网络是否能正常访问Firebase Auth核心端点(如identitytoolkit.googleapis.com),通过ping或telnet测试延迟与丢包情况;排查是否存在代理、防火墙规则限制了Firebase域名的访问,重点检查首次请求的DNS解析、SSL握手阶段是否有阻塞。初始化与缓存逻辑检查
避免在主线程执行Firebase Auth初始化操作,建议移至后台线程完成;检查是否有自定义缓存清理逻辑干扰了Firebase Auth的内置缓存机制,比如手动清理App缓存目录或修改了Firebase缓存配置。Firebase项目配置与服务状态验证
登录Firebase控制台查看Auth服务状态,确认2023年12月6日前后是否有对应区域的服务波动或维护通知;核对Android端google-services.json中的Auth配置(client ID、API key等)是否与控制台完全一致,排除配置错误导致的重试超时。日志调试与分析
开启Firebase Auth的DEBUG级日志,添加初始化代码:FirebaseAuth.getInstance().setLogLevel(Logger.Level.DEBUG);查看日志中是否包含具体的错误信息、重试触发原因(如DNS超时、SSL校验失败),重点分析
PhoneAuthProvider.verifyPhoneNumber请求从发送到回调触发的阶段细节。系统与构建配置检查
确认设备系统时间是否同步,时间偏差过大可能导致证书校验或JWT验证延迟;若使用ProGuard/R8,检查是否正确配置了Firebase Auth的混淆规则,避免关键类被混淆引发异常重试。
内容的提问来源于stack exchange,提问作者Ana

