Cordova应用iOS审核时Firebase抛出auth/internal-error错误求助
以下是几种大概率导致该问题的原因:
审核环境网络受限
App Store审核团队的设备通常处于企业级网络环境,Firebase Auth依赖的核心域名(如firebase.googleapis.com、www.googleapis.com)可能被防火墙或代理拦截,导致认证请求无法正常抵达服务器,最终抛出内部错误。另外,如果你的Cordova应用配置了严格的iOS ATS(App Transport Security)规则,也可能在审核环境下触发网络请求失败。SDK与插件版本兼容性问题
本地测试用的Firebase JS SDK版本和提交包的版本可能不一致,或者你使用的Cordova插件(如cordova-plugin-whitelist、cordova-plugin-inappbrowser)与Firebase SDK存在版本冲突,在审核设备的iOS系统版本下暴露了潜在bug。部分旧版Firebase JS SDK在iOS审核环境中存在特定认证逻辑漏洞,比如处理Apple Sign-In时的异常分支未被正确捕获。审核设备的隐私限制
审核设备可能开启了限制广告跟踪或内容与隐私访问限制等系统级隐私功能,这些设置会阻止Firebase Auth获取必要的设备标识符或完成验证流程,进而触发内部错误。比如Firebase在认证过程中需要读取设备的广告ID,被系统权限拦截后抛出未处理的异常。Firebase项目配置遗漏
你的Firebase项目控制台中,可能未正确配置App Store审核环境的访问权限,或者应用的Bundle ID与Firebase控制台中注册的信息不匹配,导致审核设备的认证请求被Firebase服务器拒绝,返回内部错误。打包时的代码处理问题
如果提交的包启用了代码混淆(如cordova-plugin-proguard)或JS资源压缩,可能破坏了Firebase JS SDK的内部结构,导致在审核环境下运行时出现未预期的逻辑错误。本地测试通常不会开启这些优化,因此无法复现问题。
内容的提问来源于stack exchange,提问作者Thost91

