添加依赖
audioplayers: ^0.16.1
添加文件路径
flutter:
assets:
- assets/sounds/
播放flutter中本地音频资源使用AudioCache类:
AudioCache player = AudioCache();
player.play('sounds/explosion.mp3');
//循环播放
player.loop('sounds/music.mp3');
这里有一个巨坑,AudioCache类默认的音频路径上已经添加了一个assets/,所以刚开始,一直在报错,说文件路径找不到([ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Exception: Unable to load asset: assets/assets/sounds/click.mp3)
assets/assets/sounds/click.mp3,这里报错说找不到这个路径,然后发现多了一个assets,就知道了,他默认路径以及帮你改动过了。
所以这里调用路径时去掉你的assets/前缀
暂停播放和停止播放
由于AudioCache没有此功能,但是它返回的实例都是AudioPlayer类型的,所以可以借助AudioPlayer来实现暂停和播放
AudioCache audioCache = AudioCache();
AudioPlayer audioPlayer = AudioPlayer();
audioCache.fixedPlayer = audioPlayer;//核心
//播放用audioCache
audioCache.paly('音频',volume = 2.0)//volume默认1.0代表音量
//暂停用audioPlayer
audioPlayer.pause()
//停止播放
audioPlayer.stop()
如果调用互联网上的远程文件,用户设备上的本地文件:请参考如下链接
传送