You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter中使用Firebase模拟器演示项目时API密钥报错如何解决?

解决Firebase Auth本地模拟器API Key无效问题

问题原因

当前代码仅完成了Firebase初始化,但未配置Firebase Auth客户端指向本地模拟器,导致客户端仍尝试连接Firebase生产环境,'any'这个无效API Key会被生产环境拒绝,从而触发报错。

修复步骤

  1. 配置Auth客户端指向本地模拟器
    在Firebase初始化完成后,添加代码让Auth客户端使用本地模拟器服务:

    Future<void> main() async {
      WidgetsFlutterBinding.ensureInitialized();
    
      await Firebase.initializeApp(
          options: FirebaseOptions(
        apiKey: 'any',
        appId: 'any',
        messagingSenderId: 'any',
        projectId: 'demo-test',
      ));
    
      // 新增:指定本地Auth模拟器的地址和端口(默认端口为9099)
      await FirebaseAuth.instance.useAuthEmulator('localhost', 9099);
    
      runApp(...);
    }
    

    若启动模拟器时自定义了端口,需将代码中的端口号改为对应值。

  2. 保持模拟器启动参数不变
    继续使用原启动命令即可,demo-test项目ID无需真实存在,只要与初始化代码中的projectId一致:

    firebase emulators:start --project demo-test --only auth
    

验证

重启Flutter应用与模拟器后,再次调用createUserWithEmailAndPassword接口,即可正常与本地模拟器交互,不会再出现API Key无效的错误。

内容的提问来源于stack exchange,提问作者vogdb

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 06:10:59