Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 【;无此方法错误】;音频_服务未在初始状态下启动_Flutter_Dart - Fatal编程技术网

Flutter 【;无此方法错误】;音频_服务未在初始状态下启动

Flutter 【;无此方法错误】;音频_服务未在初始状态下启动,flutter,dart,Flutter,Dart,我正在尝试使用允许对我的iOS应用程序进行后台控制。 当我调用AudioService.start()时,有时会引发NoSuchMethodError class _AudioServiceScreenState extends State<AudioServiceScreen> { @override void initState() { super.initState(); Future(() async { await AudioServic

我正在尝试使用允许对我的iOS应用程序进行后台控制。 当我调用
AudioService.start()
时,有时会引发
NoSuchMethodError

class _AudioServiceScreenState extends State<AudioServiceScreen> {
  @override
  void initState() {
    super.initState();
    Future(() async {
      await AudioService.connect();
      await start();
    });
  }

  @override
  void dispose() {
    Future(() async {
      await AudioService.disconnect();
    });
    super.dispose();
  }

  @override
  Widget build(BuildContext context) {
    ///
  }

  Future<void> start() async {
    print('start');
    final success = await AudioService.start(
        backgroundTaskEntrypoint: _backgroundTaskEntrypoint);
    if (success) {
      await updateQueue();
    }
  }
}

void _backgroundTaskEntrypoint() {
  print('_backgroundTaskEntrypoint');
  AudioServiceBackground.run(() => AudioPlayerTask());
}

class AudioPlayerTask extends BackgroundAudioTask {
  @override
  Future<void> onStart(Map<String, dynamic>? params) async {
    print('onStart');

    ///
  }
}
class\u AudioServiceScreenState扩展状态

检查音频服务中
start()
的实现,我预计错误发生在
spawn.spawn()

有没有办法防止错误发生?
为什么有时会发生这种情况?

你能提供一个输出吗,我只能猜测这可能是因为调用了
AudioService.start()
两次,当时它已经在运行了。

我在文章中附上了一个屏幕截图。Errore_patch.dart高亮显示。哪里调用了两次
AudioService.start()