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

Flutter中just_audio播放.oga文件iOS报1002错误,求无转换最优方案

解决iOS端.oga格式语音1002 Unsupported URL错误的无转换方案

问题原因

iOS原生AVFoundation框架不支持Ogg Vorbis编码的.oga音频格式,而just_audio默认依赖原生播放器,因此在iOS端会触发1002 Unsupported URL错误,Android端因系统原生支持该格式可正常运行。

无需格式转换的最优解决方案

通过给just_audio添加Ogg格式扩展支持,使其直接解码.oga文件,步骤如下:

  1. 添加just_audio的Ogg扩展依赖
    在项目的pubspec.yaml中更新依赖,引入针对iOS的Ogg解码扩展:

    dependencies:
      flutter:
        sdk: flutter
      voice_message_package:
        git:
          url: <你的voice_message_package分支地址>
      just_audio: ^0.9.34 # 确保版本与just_audio_ogg兼容
      just_audio_ogg: ^0.1.0
    

    执行flutter pub get完成依赖安装。

  2. 确认iOS项目配置

    • 确保iOS最低部署版本设置为iOS 11.0及以上(just_audio_ogg的最低支持版本),可在ios/Podfile中修改:
      platform :ios, '11.0'
      
    • 执行cd ios && pod install,确保CocoaPods正确集成libogg和libvorbis解码库。
  3. 验证播放器运行
    voice_message_package基于just_audio实现,只要just_audio加载了Ogg扩展解码器,就能自动处理.oga文件。无需修改voice_message_package核心代码,重新运行iOS项目即可。

注意事项

  • 务必保证just_audio与just_audio_ogg版本兼容,具体对应关系可查看pub.dev上的包说明。
  • 若使用的voice_message_package分支指定了固定版本的just_audio,需确保该版本与just_audio_ogg兼容,必要时可fork分支修改pubspec.yaml中的just_audio依赖版本。

内容的提问来源于stack exchange,提问作者Иван Игонькин

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 07:04:54