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

Flutter:Android端Audio Service锁屏窗口图标异常问题

解决Audio Service Android锁屏图标异常问题

核心原因

Android锁屏媒体控件的图标取自通知渠道图标或Audio Service配置的媒体会话图标,若图标不符合Android单色规范(要求透明背景、白色前景),系统会自动将其转为黑色圆形。

具体解决步骤

  1. 准备合规图标

    • 制作白色前景、透明背景的PNG图标,尺寸建议48x48dp(可适配不同dpi目录,如drawable-hdpi、drawable-xhdpi等),命名为ic_media_control.png,放入android/app/src/main/res/drawable/目录。
  2. 配置Audio Service参数
    在初始化Audio Service时,指定媒体控件图标:

    await AudioService.start(
      backgroundTaskEntrypoint: _backgroundTaskEntrypoint,
      config: AudioServiceConfig(
        androidNotificationChannelId: 'com.your.app.channel.audio',
        androidNotificationChannelName: '音频播放',
        androidNotificationIcon: 'ic_media_control', // 无需加.png后缀
        androidNotificationColor: Colors.blue.value, // 可选:设置通知栏背景色
      ),
    );
    
  3. 同步通知渠道图标(可选)
    若已创建过音频通知渠道,需同步更新渠道图标:

    if (Platform.isAndroid) {
      final channel = AndroidNotificationChannel(
        'com.your.app.channel.audio',
        '音频播放',
        description: '后台音频播放通知',
        icon: DrawableResourceAndroidIcon('ic_media_control'),
      );
      await AudioServiceAndroidNotificationManager().createNotificationChannel(channel);
    }
    

常见误区

  • 禁止使用带彩色背景的图标,Android系统会强制将非单色图标转为黑色剪影,导致出现黑色圆形。
  • 配置图标时只需写文件名,不要带后缀。
  • 推送通知图标(AndroidManifest.xml配置)与媒体控件图标是不同配置项,需单独设置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 16:44:54