Flutter Firebase邮箱密码登录遇firebase_auth/internal-error错误求助
Firebase Auth 17999内部错误解决步骤
- 检查配置文件有效性
确认Android的google-services.json和iOS的GoogleService-Info.plist是从Firebase控制台最新下载的,且放置路径正确(Android在app/目录,iOS在Runner目录)。旧配置文件可能包含过期的API密钥或项目ID,引发请求失败。 - 启用邮箱/密码登录方式
登录Firebase控制台,进入Authentication > 登录方法,确保邮箱/密码登录选项已开启。未开启的话,手动创建的账号无法通过API完成登录。 - 打印完整错误详情
控制台输出的错误被截断,在代码中捕获错误时打印完整信息:
完整信息会明确具体触发原因,比如API密钥无效、Identity Toolkit API未启用、账号状态异常等。try { final userCredential = await FirebaseAuth.instance.signInWithEmailAndPassword( email: emailController.text, password: passwordController.text, ); } on FirebaseAuthException catch (e) { print('完整错误: ${e.toString()}'); print('错误详情: ${e.details}'); } - 启用Identity Toolkit API
登录Google Cloud控制台,找到关联的Firebase项目,搜索Identity Toolkit API,确认该API已启用。未启用的话点击启用,等待几分钟后重试登录。 - 检查API密钥限制
在Google Cloud控制台的API和服务 > 凭据中,找到Firebase使用的API密钥,查看是否设置了过严的应用限制(如包名/签名配置错误)。测试阶段可暂时取消限制,确认是否是限制导致的问题,之后再重新配置正确规则。 - 排查网络问题
确保测试设备能正常访问Firebase服务,避免代理或VPN干扰。可切换网络(WiFi转移动数据)后重试。 - 确认账号状态
在Firebase控制台的Authentication > 用户列表中,检查手动创建的账号状态:是否为启用状态,若开启邮箱验证要求,需确认邮箱已完成验证。
内容的提问来源于stack exchange,提问作者MOOLI CHENNAKESAVA REDDY
相关产品推荐
相关产品推荐

