You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter audio_service通知栏音频控制图标显示异常问题

audio_service 插件通知/锁屏控制栏图标异常修复

Android端通知栏图标显示异常修复

Android 5.0及以上版本对通知栏小图标有强制渲染规则:系统会自动为图标加纯色蒙版,仅识别图标透明通道的轮廓,不符合规范的图标会直接显示为纯白/纯灰色块,和截图里的异常表现一致。
修复操作:

  • 准备符合规范的图标素材:必须是透明背景、纯白色图案的单色PNG,禁止使用彩色图案、带实心底图的素材
  • 将图标放入Android工程的android/app/src/main/res/drawable目录,文件名全小写,例如命名为audio_notif_icon.png;如果做多分辨率适配,可以在不同dpi对应的drawable子目录放入对应尺寸的图标:
    • mdpi:24*24px
    • hdpi:36*36px
    • xhdpi:48*48px
    • xxhdpi:72*72px
    • xxxhdpi:96*96px
  • 打开android/app/src/main/AndroidManifest.xml,在<application>标签内添加如下元数据配置,指定插件调用的通知图标资源:
<meta-data
  android:name="com.ryanheise.audioservice.notification_icon"
  android:resource="@drawable/audio_notif_icon" />
  • 初始化AudioService时,androidNotificationIcon参数要和上述配置的资源路径保持一致:
const audioServiceConfig = AudioServiceConfig(
  androidNotificationIcon: 'drawable/audio_notif_icon',
  // 其余原有配置保持不变
);

注意:不要把通知图标放到mipmap目录,否则插件大概率无法正确识别资源。配置完成后先卸载设备上已安装的旧安装包,执行flutter clean后重新编译运行,避免资源缓存导致配置不生效。

iOS端控制中心/锁屏图标尺寸过小修复

iOS端Now Playing界面展示的是媒体项的封面资源,图标过小核心原因是传入的封面资源分辨率不足,没有达到系统要求的最小尺寸。
修复操作:

  • 构建MediaItem时,artUri参数对应的图片资源分辨率不得低于512512px,推荐使用10241024px的正方形无压缩素材,禁止传入缩略图、低分辨率网络图
  • 如果使用本地资源作为封面,需要在iOS工程的资源目录下补齐@2x、@3x倍率的高分辨率素材,避免系统加载到低倍图
  • 打开ios/Runner/Info.plist,确认已正确配置后台音频权限,缺失的话补上如下配置:
<key>UIBackgroundModes</key>
<array>
  <string>audio</string>
</array>
  • 执行flutter clean后重新编译安装,清除旧版本缓存即可正常显示。

内容的提问来源于stack exchange,提问作者Kinjal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 20:27:24