Flutter Audio Service包如何开启或关闭锁屏封面展示功能
Flutter
audio_service v0.18.0+ 锁屏艺术封面开启/关闭方法 audio_service在v0.18.0大版本重构了媒体通知和锁屏展示逻辑,原本默认开启的锁屏封面现在需要主动配置才能生效,没有单独的独立开关参数,可通过以下步骤实现手动控制:
- 开启锁屏封面的必备配置
- Dart层
MediaItem参数设置:必须为当前播放的MediaItem的artUri字段传入有效资源地址,支持三种格式:- 网络图片直链:直接传入完整http/https链接
- 本地文件路径:格式为
Uri.file('本地音频封面路径').toString() - 应用内asset资源:格式为
'asset:///assets/cover.jpg'(注意路径前缀为三个斜杠)
- 平台权限配置
- Android端:确保
AndroidManifest.xml中已添加android.permission.FOREGROUND_SERVICE_MEDIA_PLAYBACK权限,Android 13+还需主动申请POST_NOTIFICATIONS权限 - iOS端:确保
Info.plist中已添加UIBackgroundModes下的audio后台模式配置
- Android端:确保
- Dart层
- 手动开关锁屏封面
开关逻辑整合在各端的通知配置参数中,初始化AudioService时传入对应配置即可全局控制:AudioService.init( // 安卓端配置 androidConfig: AndroidAudioServiceConfig( notificationConfig: AndroidNotificationConfig( showArtwork: true, // 设为false则全局关闭锁屏与通知栏封面 ), ), // iOS端配置 iosConfig: IosAudioServiceConfig( notificationConfig: IosNotificationConfig( showArtwork: true, // 设为false则全局关闭锁屏与通知中心封面 ), ), audioHandler: yourCustomAudioHandler, );
注意:如果配置后仍不显示封面,优先检查
artUri的合法性:网络图片需要应用有网络访问权限,本地图片不能放在应用私有沙盒路径下,否则系统媒体进程无法读取资源。
内容的提问来源于stack exchange,提问作者Ankit Sangwan
相关产品推荐
相关产品推荐

