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

添加flutter_audio_recorder: ^0.5.5后Flutter pub get执行失败,求解决方案

解决flutter_audio_recorder与path_provider的版本冲突问题

你碰到的是典型的依赖版本冲突问题,根源很明确:flutter_audio_recorder: ^0.5.5要求依赖file: ^5.0.4,而你当前使用的path_provider: ^2.0.1,其底层依赖的path_provider_linux: ^2.0.0最终会要求file: ^6.0.0——两者的file版本要求完全不重叠,导致pub版本解析失败。

这里有两个可行的解决方案,你可以根据项目需求选择:

方案一:降低path_provider的版本

我们可以把path_provider降级到不会触发高版本file依赖的旧版本,比如^1.6.30(这个版本的path_provider依赖的path_provider_linux不会牵扯到xdg_directories 0.2.0,也就不会触发后续的版本链冲突)。

修改你的pubspec.yaml中dependencies部分:

dependencies:
  flutter:
    sdk: flutter
  # 其他依赖保持不变
  path_provider: ^1.6.30  # 替换原来的^2.0.1
  flutter_audio_recorder: ^0.5.5

修改完成后重新执行flutter pub get,应该就能正常拉取所有依赖了。

方案二:替换为维护更活跃的音频录制库

flutter_audio_recorder的最新版本停留在2020年,已经很久没有更新,对新的Flutter SDK和生态依赖兼容性较差。更推荐你替换为持续维护的替代库,比如record(如果同时需要播放功能,也可以选择audioplayers):

使用record库的示例步骤:

  1. 移除flutter_audio_recorder,添加record到pubspec:
dependencies:
  flutter:
    sdk: flutter
  # 其他依赖保持不变
  path_provider: ^2.0.1  # 保留原版本即可
  record: ^4.4.1  # 替换flutter_audio_recorder
  1. 执行flutter pub get拉取依赖,之后按照库的官方文档调整你的录音业务代码即可。

这个方案的优势是后续不会再遇到类似的兼容性问题,因为活跃维护的库会持续适配最新的Flutter生态。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.29 09:37:45