flutter如何播放mp3音频

在Flutter中如何实现MP3音频的播放功能?需要用到哪些插件或依赖?能否提供一个简单的代码示例?另外,播放过程中如何控制音量、暂停和进度?

2 回复

使用Flutter播放MP3音频,推荐使用audioplayers插件。步骤如下:

  1. pubspec.yaml中添加依赖:audioplayers: ^5.0.0
  2. 导入包:import 'package:audioplayers/audioplayers.dart';
  3. 创建AudioPlayer实例并调用play方法,例如:
    final player = AudioPlayer();
    await player.play(UrlSource('音频URL'));
    

支持本地和网络音频,简单高效。

更多关于flutter如何播放mp3音频的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


在 Flutter 中播放 MP3 音频,推荐使用 audioplayers 包,它支持本地和网络音频播放,使用简单且功能丰富。

步骤:

  1. 添加依赖
    pubspec.yaml 中添加:

    dependencies:
      audioplayers: ^5.0.0
    

    运行 flutter pub get 安装。

  2. 基本播放代码

    import 'package:audioplayers/audioplayers.dart';
    
    final audioPlayer = AudioPlayer();
    
    // 播放网络音频
    void playNetworkAudio() async {
      await audioPlayer.play(UrlSource('https://example.com/audio.mp3'));
    }
    
    // 播放本地资源(需将音频文件放入项目 assets)
    void playLocalAudio() async {
      await audioPlayer.play(AssetSource('audio.mp3'));
    }
    
    // 暂停播放
    void pauseAudio() async {
      await audioPlayer.pause();
    }
    
    // 停止播放
    void stopAudio() async {
      await audioPlayer.stop();
    }
    
  3. 配置本地资源
    pubspec.yaml 中声明资源:

    flutter:
      assets:
        - assets/audio.mp3
    

注意事项:

  • 权限:Android 需在 AndroidManifest.xml 添加网络权限(仅网络播放需要):
    <uses-permission android:name="android.permission.INTERNET" />
    
  • 释放资源:页面销毁时调用 audioPlayer.dispose() 避免内存泄漏。
  • 支持控制音量、进度、循环播放等,参考 audioplayers 文档

此方法适用于多数简单播放场景,若有高级需求(如混音、低延迟)可考虑 just_audio 包。

回到顶部