【问题标题】:Firebase cloud messaging: Possible to send Data messages when permission = blocked?Firebase 云消息传递:当权限 = 被阻止时可以发送数据消息吗?
【发布时间】:2017-07-10 23:12:41
【问题描述】:

我正在尝试使用 Firebase 云消息传递 (FCM) 在 Web 和移动多平台应用程序中实现消息传递子系统。 FCM 允许您以两种格式发送消息:通知和数据。

通知由平台显示,例如。在网络平台上的一个小弹出窗口中或添加到您手机上的通知列表中。

数据消息由您的应用程序处理。

在应用可以接收消息之前,您必须向用户请求发送/接收通知的权限。

现在,当用户屏蔽通知时,数据消息似乎也被屏蔽了。我错过了什么,还是这是设计使然?

【问题讨论】:

  • 我认为这是设计使然,因此应该可以预期。那里的权限可以为用户提供权力/控制他们设备中发生的事情。如果被阻止的应用程序仍然能够发送通知,这看起来不太好,如果发生这种情况,这会使权限变得无用。
  • 是的,感谢您的评论 AL。我想这确实有道理。我将 FCM 视为更通用的消息传递基础架构,可以选择连接到目标平台的通知 API。显然,它不是一种选择,而是它不可或缺的一部分。你同意吗?
  • FCM 主要是简单的推送通知服务。所以,是的,它是不可或缺的一部分。

标签: android ios firebase permissions firebase-cloud-messaging


【解决方案1】:

在 iOS 的上下文中,只有在通知中心显示推送通知需要权限。

UIApplication.shared.registerForRemoteNotifications() 将允许您检索设备令牌,但不会显示权限警报。此时,您可以接收推送通知,但您不会看到它们,除非您将它们打印到 didReceiveRemoteNotification,或者对于 Firebase 数据消息,didReceive remoteMessage

要在应用外显示通知,您需要致电 UIApplication.shared.registerUserNotificationSettings(settings),这将显示权限提醒。

【讨论】:

    猜你喜欢
    • 2020-03-15
    • 2017-02-07
    • 1970-01-01
    • 1970-01-01
    • 2017-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-04
    相关资源
    最近更新 更多