Unity中无法修改Firebase推送通知图标 求解决方案
Unity 修改 Firebase Cloud Messaging 推送图标的可行方案
方法一:自定义Android Library(推荐,适配新版Unity)
- 准备符合规范的通知图标:生成24x24(mdpi)、36x36(hdpi)、48x48(xhdpi)、72x72(xxhdpi)、96x96(xxxhdpi)尺寸的透明单色图标,命名为
ic_notification.png(可自定义,但需保持统一)。 - 用Android Studio创建Android Library项目:
- 最小SDK版本与Unity项目一致,在library的
res目录下创建对应dpi的drawable-xxx文件夹,放入对应尺寸图标。 - 编译项目,在
模块目录/build/outputs/aar/下获取生成的.aar文件,确保文件名无特殊字符(如减号、空格),比如命名为notification-icons.aar。
- 最小SDK版本与Unity项目一致,在library的
- 导入Unity:将
.aar复制到Assets/Plugins/Android目录。 - 指定推送图标:发送FCM消息时,在payload中添加
"icon": "ic_notification";本地触发通知时,调用FirebaseMessaging API时传入图标名称参数。
方法二:通过Launcher模块添加资源
- 在
Assets/Plugins/Android下新建launcher文件夹,内部创建res目录,按Android规范添加各dpi图标文件夹及图标文件。 - 打开Unity的
Edit > Project Settings > Player > Android > Publishing Settings,勾选Custom Launcher Gradle Template,Unity会自动识别launcher/res下的资源。
排查你遇到的错误
- 你之前的
.aar转换错误,大概率是因为文件名不合法(比如ic_stat_sb-.aar末尾的减号),重新编译aar并使用规范文件名即可解决。 - 确保Unity项目的Android SDK、NDK版本与Firebase插件版本兼容,建议使用Firebase官方适配的插件版本。
内容的提问来源于stack exchange,提问作者AryanshDev
相关产品推荐
相关产品推荐

