Flutterでaudioplayersを使っていて、Windowsでは複数のBGMや効果音を重ねることができたけど、Androidではできなかった。そういえばスマホにはオーディオフォーカスとかあったなと思い出して、調べてみると下記でミキシング設定できた。
final ctx = AudioContextConfig( // マナーモード有効 respectSilence: true, // ミキシング可 focus: AudioContextConfigFocus.mixWithOthers, ).build(); await player.setAudioContext(ctx);
あとWindowsで一度stop()したら(リソース解放されちゃってる?)、seek()できないだの、play()できないだの問題が発生した。
現在のバージョンだけの問題なのかわからないが、とりあえずpauseとseekでstop代わりにしてお茶を濁した。再生はresume()で。
Future<void> stop(){
await player.pause();
await player.seek(Duration.zero);
}