打开应用程序并锁定屏幕时未收到 Ionic FCM 推送通知,除非被点击

Posted

技术标签:

【中文标题】打开应用程序并锁定屏幕时未收到 Ionic FCM 推送通知,除非被点击【英文标题】:Ionic FCM push notification not received when app is opened and screen locked unless it's tapped 【发布时间】:2018-04-15 15:10:04 【问题描述】:

我正在开发一个离子应用程序,我正在使用 FCM 推送通知向用户发送通知。

这是已发送通知的 JSON 负载:

    
    "to" : "access_token",
    "priority": "normal",
    "notification" : 
      "body" : "this is message",
      "title" : "notification Title"
    ,
    "data": 
          "link": ....
     

在这些不同的情况下会收到推送通知:

应用程序在后台或被杀死时 -->用户将 接收系统托盘推送通知 当应用在前台且​​用户在其中时 -->用户将收到更新应用的新数据 当应用在前台并且屏幕被锁定时(系统认为它在后台) --> 所以用户会收到一个 系统托盘推送通知,但在解锁手机屏幕时, 在前台的应用程序实例中什么都没有发生,直到我单击系统托盘中的推送通知。

有没有什么方法可以在不点击系统托盘的情况下获取推送通知的数据?

【问题讨论】:

【参考方案1】:

希望这项工作! 对于前台,您可以使用 Local Notification 来显示推送通知:

https://ionicframework.com/docs/native/local-notifications/

【讨论】:

运行良好,根据应用设置图标和颜色。用户甚至不会注意到【参考方案2】:

将通知信息与数据对象一起发送,然后在您的离子项目中 使用该数据手动设置通知。

【讨论】:

以上是关于打开应用程序并锁定屏幕时未收到 Ionic FCM 推送通知,除非被点击的主要内容,如果未能解决你的问题,请参考以下文章

在 Android Q 的锁定屏幕上收到 fcm 通知后开始活动

锁定屏幕上的 FCM 通知 Flutter

应用关闭或被杀时未收到 Android FCM 通知

通过 FCM 发送时未收到推送通知,但在 IOS 上通过 APN 发送时收到

在Android中锁定屏幕时未调用BroadcastReceiver

从后台服务打开应用程序屏幕并锁定手机屏幕时冻结