Flutter:关闭应用程序后播放音乐

问题描述 投票:0回答:2

我想让音乐播放器动摇。我想当用户播放音乐并关闭应用程序时,音乐作为服务在后台播放。

我用Google搜索并发现了这些颤振库,这是不可能的(意味着音乐播放器作为后台服务工作)? 是真的吗?

或者有没有办法做到这一点?

flutter dart service
2个回答
0
投票

也许audio_service会适合您的需求。根据其描述,它实际上应该正是您要搜索的内容。

此插件会包装您现有的音频代码,以使其在后台运行,并且提供回调,使您的应用可以响应耳机,Android锁定屏幕和通知,iOS控制中心,可穿戴设备和Android上的媒体按钮自动。


0
投票

要在应用程序处于后台运行时停止音乐,您需要将Audio Player绑定到WidgetsBindingObserver才能监听应用程序生命周期状态的变化。

例如创建自定义class

 class _Handler extends WidgetsBindingObserver {
    @override
    void didChangeAppLifecycleState(AppLifecycleState state) {
      if (state == AppLifecycleState.resumed) {
         AudioPlayer.resume(); // Audio player is a custom class with resume and pause static methods
       } else {
         AudioPlayer.pause();
       }
     }
  }

然后在main.dart中,您可以将其用作波纹管:

main() async {
   WidgetsFlutterBinding.ensureInitialized();

   runApp(YourApp());

    WidgetsBinding.instance.addObserver(new _Handler());
  }
© www.soinside.com 2019 - 2024. All rights reserved.