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

Expo应用集成Apple登录Firebase时ID Token受众不匹配问题排查

关于Apple登录ID Token受众host.exp.Exponent的来源解析

这个host.exp.Exponent是Expo Go客户端默认的Bundle ID/受众标识符,来源核心原因如下:

  • 当你在开发阶段用Expo Go测试Apple登录时,Expo Go是Expo官方预签名的通用客户端,它的Bundle ID就是host.exp.Exponent。此时你的Apple登录请求是通过Expo Go发起的,苹果会把这个客户端的ID作为audience(受众)嵌入返回的ID Token里,而Firebase验证时期望的是你自己配置的Bundle ID/Apple登录服务ID,自然就会出现不匹配的报错。
  • 哪怕你在app.json里已经配置了自己的Bundle ID,在Expo Go里也不会生效——因为Expo Go用的是Expo的开发者证书,不是你自己的,所以Apple登录的身份主体是Expo的客户端,不是你的应用。

补充解决方向(供参考)

要让Firebase能正确验证Apple登录的ID Token,你需要:

  • 构建自定义开发客户端(执行eas build --profile development),用你自己的开发者证书签名,此时应用会使用你配置的Bundle ID,Apple返回的Token受众就会和Firebase的期望一致。
  • 生产环境构建(eas build --profile production)也不会有这个问题,因为生产包是用你自己的证书签名的。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 12:17:02