【问题标题】:Flutter FCM is not working when app is closed关闭应用程序时 Flutter FCM 不起作用
【发布时间】:2019-11-25 00:56:48
【问题描述】:

我一直在尝试在 Flutter 中制作一个接收推送通知的应用程序。当我在 Redmi note 5 上运行它时,我会在应用程序处于前台或后台时收到通知,但在应用程序终止时我没有收到任何通知。另一方面,当我在 OnePlus 6T 上运行它时,即使应用程序终止,一切正常。我认为这里的问题是应用程序不允许在后台运行或其他什么,但是 instagram、facebook ......如何实现这一点?

【问题讨论】:

  • 很明显它正在工作。如果我没记错的话,那只是在你的 Redmi Note 5 上不起作用。
  • 你找到解决办法了吗

标签: android flutter firebase-cloud-messaging


【解决方案1】:

对于任何设备遇到类似问题的人,请检查该设备是否在此处列出:https://dontkillmyapp.com/

问题是,一些 android 制造商定制系统的电池省电功能只会杀死我们的应用程序,并阻止它在后台运行和接收通知。一些大型应用程序,如 facebook、uber、instagram 工作得很好,因为它们通常被列在“白名单”中。

在这种情况下,我们作为开发人员无能为力,但通常系统上有一个选项可以允许特定应用程序在后台运行。上一个链接阐明了这些用例。

【讨论】:

    【解决方案2】:

    在我的情况下,我将两个应用程序添加到同一个 Firebase 项目中,因此第一个应用程序的 google-services.json 也发生了更改,因此下载新的 json 文件并将其替换为旧文件对我有用。

    【讨论】:

      【解决方案3】:

      我解决了。基本上,我所要做的就是去应用程序设置,在那里我打开了自动启动权限,它就像魔术一样工作。

      【讨论】:

      • 这不是一个好的解决方案。我手机上只有少数几个应用程序有这个权限。其余的则没有,尽管他们可以在关闭时收到通知事件
      【解决方案4】:

      首先,检查清单文件中的权限,然后在您的应用启动时,要求用户授予权限。

      看看这个Link

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-11-19
      • 2021-03-08
      • 2019-01-11
      • 2017-06-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多