flutter - 如何在手机屏幕关闭时使用 Flutter 播放声音
问题描述
@override
void initState() {
super.initState();
_player = AudioPlayer();
_player.setAsset('assets/audio/sample.mp3');
_controller.addStatusListener((status) {
if(status == AnimationStatus.completed) {
_player.play();
}
});
}
我是 Flutter 的新手,我正在努力让它在我制作的动画计时器结束时播放 mp3 通知声音。
我目前只在开发 Android 应用程序。上面的代码显示我在initState中为动画完成状态设置了一个状态监听器。屏幕打开时它可以正常工作,但如果屏幕关闭,则在屏幕再次解锁之前不会播放声音。
我正在使用just_audio pub dev 包来让音频工作,并且一直在寻找audio_service pub dev 包作为尝试让它工作的一种方式。我发现集成 audio_service 有点令人困惑,因为它看起来好像是为了比我需要的更大的东西。有没有一种简单的方法来解决我想要的所有这些?
解决方案
如果您需要更好的队列管理,我仍然强烈推荐您使用 audio_service,无论如何,flutter_sound最近添加了带有后台支持和非常容易集成的flauto 。
推荐阅读
- ios - SwiftUI Picker 专注于视图中的选定项目
- javascript - 给不和谐机器人的 message.content 提供 2 种方法
- django - 如何在 Graphene Django 中过滤相关模型计数
- python - selenium如何单击具有动态ID的按钮
- asp.net-core - 在 ASP.Net Core 5 WebAPI 中启用 CORS
- python - 我正在尝试读取一个 pdf 文件并在 python 中显示它
- python - 将值添加到数组中的元素之一
- mysql - 使用 DataGrid 和 axios 在 React js 中实现加载、更新、删除函数
- python - 为什么 Kivymd MDSwiper 发生未知类错误?
- ruby-on-rails - 从 webpack 4.0 升级到 5.0 rails 6.1.0 后,Babel 不再接受 JSX