以下代码段是单击按钮,会发出短促的哔声:
FlatButton(
onPressed: () => {
final player = new AudioCache();
player.play('note1.wav');
}
child: Text('Click to ding!'),
),
我面临的问题是每当我单击此按钮时,虽然声音播放正确,但我在终端中收到此错误:
flutter: Fatal Error: Callback lookup failed!
我想知道它是什么以及我应该怎么做?我查了package's issue page但没有发现任何帮助。
谢谢
最佳答案
我遇到了同样的问题,所以这适用于我的游戏代码,我希望这对你有用,首先,创建一个这样的 Controller 类:
import 'package:audioplayers/audio_cache.dart';
import 'package:audioplayers/audioplayers.dart';
void audioPlayerHandler(AudioPlayerState value) => print('state => $value');
class GameController {
static AudioPlayer audioPlayer = AudioPlayer();
static AudioCache audioCache = AudioCache();
static void play(String sound) {
if (!kIsWeb && Platform.isIOS) {
audioPlayer.monitorNotificationStateChanges(audioPlayerHandler);
}
audioCache.play(sound);
}
}
然后通过这种方式使用您的代码:FlatButton(
onPressed: () => {
GameController.play('note1.wav');
}
child: Text('Click to ding!'),
),
关于Flutter: fatal error :回调查找失败! (带有音频播放器包),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61263458/