【问题标题】:Flutter plugin just_audio example error then disposeFlutter 插件 just_audio 示例错误然后处理
【发布时间】:2020-12-03 08:22:18
【问题描述】:

我刚刚复制了just_audio库的示例并放入我的项目中,然后我正在做一个热重载或按回,我得到一个错误

[VERBOSE-2:shell.cc(209)] Dart Error: Unhandled exception:
Bad state: You cannot close the subject while items are being added from addStream
#0      Subject.close (package:rxdart/src/subjects/subject.dart:152:7)
#1      AudioPlayer.dispose (package:just_audio/just_audio.dart:611:30)
<asynchronous suspension>
#2      _LessonPractiseScreenState.dispose (package:wbh/ui/pages/lesson/lesson_practise_screen.dart:90:13)
#3      StatefulElement.unmount (package:flutter/src/widgets/framework.dart:4773:12)
#4      _InactiveElements._unmount (package:flutter/src/widgets/framework.dart:1935:13)
#5      _InactiveElements._unmount.<anonymous closure> (package:flutter/src/widgets/framework.dart:1933:7)
#6      ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:4600:14)
#7      _InactiveElements._unmount (package:flutter/src/widgets/framework.dart:1931:13)
#8      _InactiveElements._unmount.<anonymous closure> (package:flutter/src/widgets/framework.dart:1933:7)
#9      SingleChildRenderObjec<…>

我测试的导致小部件是:

Widget get _seekBar => StreamBuilder<Duration>(
        stream: _player.durationStream,
        builder: (context, snapshot) {
          final duration = snapshot.data ?? Duration.zero;
          return StreamBuilder<Duration>(
            stream: _player.positionStream,
            builder: (context, snapshot) {
              if (snapshot.hasData) {
                var position = snapshot.data ?? Duration.zero;
                if (position > duration) {
                  position = duration;
                }
                return SeekBar(
                  duration: duration,
                  position: position,
                  onChanged: (newPosition) {
                    _player.seek(newPosition);
                  },
                );
              } else
                return Container();
            },
          );
        },
      );

但我无法自己修复它,并且在网上没有任何信息,因此将不胜感激。

【问题讨论】:

    标签: flutter dart just-audio


    【解决方案1】:

    这是通过 GitHub 报告的一个错误,并在不久之后推出了一个修复程序(有关讨论,请参阅 this issue)。较新的版本 (>= 0.4.4) 应该可以解决此问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-08-15
      • 1970-01-01
      • 1970-01-01
      • 2019-01-13
      • 2019-11-01
      • 2013-06-09
      • 1970-01-01
      相关资源
      最近更新 更多