iOS Firebase 推送通知提醒
Posted
技术标签:
【中文标题】iOS Firebase 推送通知提醒【英文标题】:iOS Firebase push notifications alert 【发布时间】:2017-01-20 15:14:51 【问题描述】:当我的应用程序在前台运行并且我从我的 Web 服务器 (php) 发送通知时,iPhone 不会提醒消息已到达。我知道消息到达了,因为我将它保存在内部数据库中,并且我可以在视图控制器中看到它。
这是我的 JSON 数据包:
"data":
"mensagem":"msg",
"dataEnvio":"2017-01-2016:06:58"
,
"content_available":true,
"time_to_live":3600,
"priority":"high",
"notification":
"title":"new",
"sound":"default",
"body":"msg"
,
"registration_ids":["..."]
android 上不会发生同样的问题。
有人知道这是怎么回事吗?
【问题讨论】:
当通知被发送并且应用程序在前台时,通知被传递给应用程序,而不是用户,如果你想让用户看到它,那么你的应用程序必须显示一个本地通知.顺便说一句,您有一个根据 Apple 文档不允许的有效负载 - 您将 content_available 设置为 true 表示推送是应用程序导向的推送,但它也有一个通知部分表明它是用户推送。因此,您的有效载荷是矛盾的。这不应该发生,但我不知道 Firebase 在这种情况下是否对内容做了任何事情。 非常感谢您的回复。 'content_available' 确实是错误的。我从有效负载中删除了“content_available”,这解决了我面临的另一个问题。我会尝试找到一些方法来显示本地通知。再次,非常感谢你,它帮助了很多! 【参考方案1】:当应用程序处于前台时,推送通知的通知部分在 android 和 ios 中都会被忽略。我确定您是在 android 中自己在处理函数 OnMessageReceived 上创建推送通知,以便它在您处于前台时出现。
【讨论】:
以上是关于iOS Firebase 推送通知提醒的主要内容,如果未能解决你的问题,请参考以下文章
在 Firebase 中的某个时间向用户发送推送通知 [重复]