Flutter中Audioplayers包PlayerState无COMPLETED/STOPPED常量报错求助
解决Audioplayers包中PlayerState常量不存在的问题
你遇到的错误是因为Audioplayers包版本更新后,PlayerState的枚举值名称发生了变更,旧版本的COMPLETED、STOPPED常量在新版本中已被重命名。
具体修改方案
先确认
pubspec.yaml中audioplayers的依赖版本,若使用的是1.0.0及以上的新版本,直接替换枚举值名称:
将代码中的判断逻辑:if (state == PlayerState.COMPLETED || state == PlayerState.STOPPED) { setState(() { isPlaying = false; }); }替换为:
if (state == PlayerState.completed || state == PlayerState.stopped) { setState(() { isPlaying = false; }); }新版本的
PlayerState枚举值均为小写开头,对应原逻辑的就是completed和stopped。若你需要保留旧版本依赖,需查阅对应版本的官方文档,使用该版本定义的
PlayerState常量名称,但更推荐升级到新版本以获得更好的兼容性和功能支持。
内容的提问来源于stack exchange,提问作者Joanna Findura
相关产品推荐
相关产品推荐

