推送通知上的Flutter Show App图标徽章

时间:2018-11-20 09:52:02

标签: flutter

我正在寻找一种在用户收到推送通知时显示应用程序图标徽章的方法。

我正在使用Firebase_messaging插件将flutter用于处理推送通知,将flutter_app_badger用于应用程序图标徽章。 但是我想将两者结合起来,以便在不打开应用程序的情况下在图标上设置数字。有可能做到这一点吗?还是我忽略了firebase_messaging插件中显而易见的内容?

很抱歉提供可怕的解释。我希望有人可以帮助我解决这个问题。

5 个答案:

答案 0 :(得分:0)

我怀疑您的图标与设备中的图标准则不兼容。我建议尝试https://pub.dev/packages/flutter_launcher_icons为您的设备制作图标。

答案 1 :(得分:0)

应用程序图标徽章取决于应用程序启动器

某些Android应用启动器默认包含此功能,您可以在设置->应用->通知中进行检查 Full script

仅供参考

答案 2 :(得分:0)

我认为您在运行应用程序时尝试创建流以实时监听 Firestore 中的文档更改。在这里阅读How to listen for document changes in Cloud Firestore using Flutter?

而且图标可以在后台更新,但我认为不打开应用程序是不可能的。

答案 3 :(得分:0)

我没有直接的答案,因为我以前没有遇到过这个问题,但这可能会解决您的问题

确保您已正确定义应用程序的图标 - 对于 Flutter,您应该执行以下步骤:

  1. 将包导入您的 pubsec.yaml 文件 - 它应命名为 flutter_launcher_icons: "^0.8.0" 并在 pubspec.yaml 文件的 dev-dependencies 部分下导入。

  2. 在 dev-dependencies 部分之后,为 flutter 图标添加一个新部分,如下所示: 颤振图标: ios:真的 安卓:真的 image_path_ios: "{图标文件路径}" image_path_android: "{图标文件路径}"

希望这会有所帮助,并祝您解决问题!

答案 4 :(得分:0)

使用 https://pub.dev/packages/firebase_messaging 通知, 对于 Android 后台通知,您可以将其添加到应用程序标记的 AndroidManifest.xml 文件中。并确保您的可绘制文件夹中存在 androidlogo.png(这是示例名称)。

<application>
<meta-data
        android:name="com.google.firebase.messaging.default_notification_icon"
        android:resource="@drawable/androidlogo" />
</application>

在前台通知的情况下,您必须使用 Flutter Local Notifications,因此您可以在初始化时提供相同的内容

var initializationSettingsAndroid = new AndroidInitializationSettings('androidlogo');
flutterLocalNotificationsPlugin.initialize(initializationSettings, onSelectNotification: onNotificationClicked);

对于应用程序图标,您可以使用此库 https://pub.dev/packages/flutter_launcher_icons,上面的答案也建议使用此库。

如果是 iOS,您的启动器图标将是您的通知图标。

对于徽章图标的显示,您可以使用 https://pub.dev/packages/flutter_app_badger。 (对于支持的手机)。

因此,使用所有这些,您将获得带有徽章的应用图标和通知图标作为您的应用图标(或由您指定)。