我需要在不中断现有播放列表的情况下播放音频。我的目标是通过电话上当前的音频服务播放音频,理想情况下我想避开音频并在其上播放我的流。与 GPS 服务在驾驶时所做的非常相似(Waze、谷歌地图)。
问问题
231 次
1 回答
1
脚步:
- 安装依赖项
- 创建 initAudioService() 函数
- 创建一个 AudioSession 实例
- 如示例中所示配置您的 AudioSession 实例
- 如示例所示初始化您的 AudioService
- 在 runApp 之前从 main 调用 initAudioService()
依赖项:
- 音频服务:^0.18.0;
- 音频会话:^0.1.6+1
例子:
导入“包:audio_service/audio_service.dart”; 导入“包:audio_session/audio_session.dart”; 导入“audio_player_service.dart”; 未来的 initAudioService() 异步 { //audio_session 实例 最终会话 = 等待 AudioSession.instance; //audio_session DUCK 其他配置 等待 session.configure(const AudioSessionConfiguration( avAudioSessionCategory: AVAudioSessionCategory.playback, avAudioSessionCategoryOptions: AVAudioSessionCategoryOptions.duckOthers, avAudioSessionMode: AVAudioSessionMode.defaultMode, avAudioSessionRouteSharingPolicy: AVAudioSessionRouteSharingPolicy.defaultPolicy, avAudioSessionSetActiveOptions: AVAudioSessionSetActiveOptions.none, androidAudioAttributes:AndroidAudioAttributes( contentType:AndroidAudioContentType.music, 标志:AndroidAudioFlags.none, 用法:AndroidAudioUsage.media, ), androidAudioFocusGainType:AndroidAudioFocusGainType.gainTransientMayDuck, androidWillPauseWhenDucked:真, )); //初始化音频服务 返回等待 AudioService.init( 生成器:()=> AudioPlayerService(), 配置:常量音频服务配置( androidNotificationChannelId: 'com.YOUR_COMPANY.YOUR_APP_NAME.audio', androidNotificationChannelName: '音频服务演示', androidNotificationOngoing:是的, androidStopForegroundOnPause:真, ), ); } //主要的 无效主()异步{ 等待 initAudioService(); runApp(const MaterialApp(home: MyApp())); }
于 2021-09-30T23:21:07.967 回答