I need to play notifications without interrupting an existing music playlist.
The playlist volume is currently being muted, but I require it to be turned up again or not muted
With
just_audio: ^0.9.34
audio_session: ^0.1.16
My code:
audioInit() async {
//Control sesion de audio
sessionAudio = await AudioSession.instance;
await sessionAudio.configure(AudioSessionConfiguration(
avAudioSessionCategory: AVAudioSessionCategory.playback,
avAudioSessionCategoryOptions: AVAudioSessionCategoryOptions.duckOthers,
avAudioSessionMode: AVAudioSessionMode.defaultMode,
avAudioSessionRouteSharingPolicy:
AVAudioSessionRouteSharingPolicy.defaultPolicy,
avAudioSessionSetActiveOptions: AVAudioSessionSetActiveOptions.none,
androidAudioAttributes: const AndroidAudioAttributes(
contentType: AndroidAudioContentType.music,
flags: AndroidAudioFlags.none,
usage: AndroidAudioUsage.media,
),
androidAudioFocusGainType: AndroidAudioFocusGainType.gainTransientMayDuck,
androidWillPauseWhenDucked: true,
));
}
Play notification
Future<void> playNotification(String audioasset) async {
if (prefsUsuario.volumeSelect > 0) {
// Activate the audio session before playing audio.
if (await sessionAudio.setActive(true)) {
// Now play audio.
AudioPlayer playerFinal = AudioPlayer();
if (kIsWeb) {
playerFinal.setAudioSource(
AudioSource.uri(Uri.parse("assets/$audioasset")),
initialPosition: Duration.zero,
preload: true,
);
} else {
playerFinal.setAudioSource(AudioSource.asset(audioasset));
}
playerFinal.setVolume(prefsUsuario.volumeSelect);
playerFinal.play();
} else {}
}
}