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

Xcode编译集成Firebase的Flutter项目提示FIRStorageMetadata无downloadURL属性

报错原因

该报错由Firebase iOS SDK与Flutter侧firebase_storage插件版本不匹配导致:Firebase iOS SDK v5.0及以上版本移除了FIRStorageMetadata类的downloadURL属性,旧版firebase_storage插件自动生成的原生代码仍在调用该已废弃属性,因此触发编译错误。

解决方案

方案1:版本对齐(无需修改自动生成代码,优先推荐)

直接通过依赖版本对齐修复,不会改动自动生成的代码,可永久解决问题,操作步骤如下:

  • 清理项目缓存:
flutter clean
rm -rf ios/Pods ios/Podfile.lock
  • 升级pubspec.yaml中firebase_storage到官方最新稳定版,同时同步升级所有其他firebase相关依赖(如firebase_core等)到同大版本的最新稳定版,保证依赖间互相兼容
  • 重新拉取依赖并编译:
flutter pub get
cd ios && pod install --repo-update

重新运行项目即可,新版firebase_storage的自动生成代码已经适配了新版Firebase iOS SDK的API,不会再触发该报错。

方案2:临时单行修复(仅用于暂时无法升级依赖的场景)

如果当前无法升级依赖,可以直接修改报错的代码行,把:

NSURL *downloadURL = metadata.downloadURL;

替换为以下内容即可完成修复:

NSURL *downloadURL = [[fileRef downloadURLWithCompletion:nil] wait];

注意该修改为临时方案,后续执行flutter clean或pod install后,自动生成的原生代码会覆盖本次修改,仅可作为临时应急使用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 06:24:03