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

Flutter中使用audioplayers播放音频报错求助

解决audioplayers加载音频资源失败的问题

针对你遇到的音频资源加载错误,按以下步骤排查修复:

1. 修正pubspec.yaml的配置格式

这是最常见的错误原因——你的assets配置没有嵌套在flutter节点下,Flutter无法识别。修正后的pubspec.yaml核心结构如下:

dependencies:
  audioplayers: ^1.1.1
  # 其他依赖项保持不变

flutter:
  uses-material-design: true
  assets:
    - sounds/

2. 验证资源文件路径与命名

  • 确认项目根目录下存在sounds文件夹,且内部确实有note1.wav文件
  • 注意大小写敏感:在iOS/macOS/Linux环境下,Note1.wav和note1.wav会被视为不同文件,必须严格匹配代码中的路径拼写

3. 清理缓存并重启项目

缓存可能导致资源未更新,执行以下操作:

  1. 运行命令:flutter clean
  2. 关闭当前IDE/编辑器,重新打开项目
  3. 重新执行flutter run

4. 确认代码中的路径匹配

如果你的音频文件实际放在assets/sounds/目录下(而非根目录的sounds/),则:

  • pubspec.yaml配置改为:assets: - assets/sounds/
  • 代码中的路径改为:await player.play(AssetSource('assets/sounds/note1.wav'));

修正后的完整代码示例

import 'package:audioplayers/audioplayers.dart';
import 'package:flutter/material.dart';

void main() => runApp(XylophoneApp());

class XylophoneApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        body: SafeArea(
          child: Center(
              child: TextButton(
                  onPressed: () async {
                    final player = AudioPlayer();
                    await player.play(AssetSource('sounds/note1.wav'));
                  },
                  child: const Text('Click Me'))),
        ),
      ),
    );
  }
}

按以上步骤操作后,应该能正常加载并播放音频。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 07:15:44