Reputation: 11
I want to play a short sound in my App and while doing that lowering the volume of the musik playing in another app on ios.
I tried initializing my Audio Service with these configurations
Future<void> initAudioService() async {
//audio_session INSTANCE
final session = await AudioSession.instance;
//audio_session DUCK OTHERS CONFIGURATION
await session.configure(const AudioSessionConfiguration(
avAudioSessionCategory: AVAudioSessionCategory.playback,
avAudioSessionCategoryOptions: AVAudioSessionCategoryOptions.duckOthers,
avAudioSessionMode: AVAudioSessionMode.defaultMode,
avAudioSessionRouteSharingPolicy:
AVAudioSessionRouteSharingPolicy.defaultPolicy,
avAudioSessionSetActiveOptions: AVAudioSessionSetActiveOptions.none,
androidAudioAttributes: AndroidAudioAttributes(
contentType: AndroidAudioContentType.music,
usage: AndroidAudioUsage.media,
),
androidAudioFocusGainType: AndroidAudioFocusGainType.gainTransientMayDuck,
androidWillPauseWhenDucked: true,
));
//INITIALIZE audio_service
await AudioService.init(
builder: () => _audioPlayer,
config: const AudioServiceConfig(
androidNotificationChannelId: 'com.uniteplay.app.audio',
androidNotificationChannelName: 'Audio Service Demo',
androidNotificationOngoing: true,
),
);
}
But it plays the sound on top of the music of another app.
Upvotes: 1
Views: 99