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

Android 14中Awesome Notifications按钮图标不显示问题求助

Android 14通知按钮图标不显示的解决方案

排查与修复步骤

  • 适配Android 14图标规范
    Android 14对通知操作按钮图标有强制要求:必须是单色矢量SVG图标,仅支持白色或系统强调色,彩色位图会被系统过滤不显示。即便你设置了color属性,图标本身非单色也无法正常展示。

  • 修正图标引用格式
    虽然初始化通知图标时resource://drawable/xxx有效,但通知按钮图标需使用Android原生资源引用格式,同时确保图标文件名全小写(Android资源文件名不允许大写或特殊字符)。尝试修改路径为:

    icon: '@drawable/reject_icon'
    

    注意图标文件需是reject_icon.xml(矢量格式),放在android/app/src/main/res/drawable目录下。

  • 调整矢量图属性
    打开矢量图标文件,确保根节点vector的tint属性适配系统主题,避免固定死颜色:

    <vector xmlns:android="http://schemas.android.com/apk/res/android"
        android:width="24dp"
        android:height="24dp"
        android:viewportWidth="24"
        android:viewportHeight="24"
        android:tint="?attr/colorOnSurface">
        <!-- 图标路径内容 -->
    </vector>
    
  • 清理编译缓存并重装

    1. 在Android Studio中执行Build > Clean Project,再执行Build > Rebuild Project
    2. 卸载设备上的旧应用,重新安装测试
  • 用极简代码验证
    排除其他代码干扰,创建最小化测试示例:

    await AwesomeNotifications().createNotification(
      content: NotificationContent(
        id: 10,
        channelKey: 'basic_channel',
        title: '测试通知',
        body: '带按钮图标测试',
      ),
      actionButtons: [
        NotificationActionButton(
          key: 'REJECT',
          label: 'Reject',
          icon: '@drawable/reject_icon',
          color: Colors.red,
          showInCompactView: true,
        )
      ]
    );
    

额外提示

若以上方法无效,检查AndroidManifest.xml中通知渠道的importance配置,需至少设置为IMPORTANCE_DEFAULT,低优先级通知可能会隐藏按钮图标。

内容的提问来源于stack exchange,提问作者Naif Alluhaidan Engr

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 11:42:36