Unity Android项目中的单独通知图标

时间:2017-06-14 11:59:34

标签: android unity3d

我在Unity项目中添加了一个Icon,并为Android构建了它。但是,我的Icon采用“Apple风格”,这意味着它的内部是圆角和图形的正方形。这导致状态栏中显示的通知图标只是一个带圆角的白色方块。我想用另一块图形替换这个白色方形图标。

我如何在Unity中做到这一点?

理想情况下,我不需要购买或集成第三方插件,因为它们很可能包含许多不必要地使我的项目膨胀的功能。但是,如果有一个第三方插件可以解决这个问题,那么知道它也会很有趣,这样我就可以了解它们是如何解决它的。

感谢。

1 个答案:

答案 0 :(得分:0)

将图标的简化小版本放在插件文件夹中,例如“插件/ Android / res / drawable /small_icon.png”或“插件/ Android / MyProjectPlugin / res /drawable/small_icon.png“

重要的一点是在推送通知消息正文中发送id“small_icon”,请参阅here

{
    "to" : "...",
    "notification" : {
        "body" : "a body",
        "title" : "a title",
        "icon" : "small_icon"
    }
}

Prime31 Cloud Messaging Plugin documentation中有详细记录:

  

smallIcon和largeIcon都将通过标准加载   Android资源系统。这意味着图标文件必须位于   res / drawable文件夹。您必须使用标准引用它们   Android命名系统。例如,如果您放置文件   插件/ Android / res / drawable中的small_icon.png和large_icon.png   你想要传递“small_icon”和“large_icon”的文件夹   推送通知。有关所有图标大小的详细信息,请访问Android   文档。

Firebase Cloud Messaging介绍了如何设置AndroidManifest.xml

 <!-- Set custom default icon. This is used when no icon is set for incoming notification messages. -->
<meta-data
    android:name="com.google.firebase.messaging.default_notification_icon"
    android:resource="@drawable/ic_stat_ic_notification" />
<!-- Set color used with incoming notification messages. This is used when no color is set for the incoming
     notification message. -->
<meta-data
    android:name="com.google.firebase.messaging.default_notification_color"
    android:resource="@color/colorAccent" />