Ionic 2是否支持私人&公共Firebase通知?

时间:2017-08-11 14:53:30

标签: firebase ionic2 firebase-cloud-messaging firebase-notifications

我想在最近几天处理firebase通知,但我想就这几个问题找到答案:

  1. Ionic2是否支持firebase通知?

  2. 当我的申请关闭或者应该在后台工作时,通知会显示在屏幕顶部吗?

  3. 是否按时发送了firebase通知,或者可能需要很长时间?

  4. 如果我认为Ionic 2可以发送私人通知(仅限我的设备),那么我可以为所有应用程序用户发送公告吗?

  5. 如果回答所有问题"是",希望您给我任何有用的链接,可以帮助我(如果您有时间)

2 个答案:

答案 0 :(得分:2)

除了加布里埃尔的回答:

  1. 通知的默认行为是显示在屏幕的顶部。我之前没有使用Ionic,但AFAIK,这种行为应该与Android相比。

    话虽如此,您应该参考FCM文档的Handling Messages部分。

  2. 有些因素可能会影响设备接收消息所需的时间,但作为FCM的行为,它会尽快发送消息(请参阅我的回答{ {3}})。

  3. 进一步逐条列出:

    • 仅限特定设备 - 是的。发送消息时,只需指定应接收该消息的注册令牌。
    • 所有设备 - 是的。您可以使用Firebase通知控制台。但是,如果您打算使用REST API发送消息,则必须确保设备相应地订阅了自定义全局主题。
  4. 关于Gabriel提到的设备到设备,我认为它应该被称为服务器到特定设备

答案 1 :(得分:1)

  1. 是的,它适用于FCM(Firebase Cloud Messaging,又名GCM - Google Cloud Messaging)。它支持通过HTTP客户端订阅主题和设备到设备通知。主题订阅和设备到设备都需要FCM plugin

  2. 是的,它们会作为任何推送通知显示在设备屏幕的顶部,您只需要在接收到它之后对其行为进行编码,例如在点击通知时执行某些操作,或者执行操作如果已经收到并且应用程序已经打开(前景),那就完全取决于您。

  3. 按时发送,我从来没有遇到过延迟问题,发送通知的时间越长,我在设备上收到的时间就是10秒。但据我所知,它会将您的通知“存储”24小时,因此如果服务器发生故障或发生某些事情,通知的生命周期将为24小时。

  4. 正如第一个回答所述,您可以订阅用户的主题。假设您想要一个主题发送消息,以便所有用户都可以接收,您可以拥有all主题,或只有一个用于登录用户,只有购买产品的用户,您甚至可以获得所有用户令牌和一个接一个地发送,但让他们订阅主题要好得多。

    可以通过Firebase项目控制台发送主题通知。设备到设备由您的应用代码发送。

    要发送设备到设备,您需要一个令牌,它由FCM插件(上面的链接)提供,您需要将此令牌存储在某个位置,例如Firebase上的用户节点。我通常使用Device plugin提供的用户设备ID来获取其令牌,因为用户可以拥有多个设备并登录所有设备,这样就可以防止令牌覆盖。

  5. 我不知道有关使用Firebase配置FCM的好教程,如果我找到了我将编辑问题并为您添加的内容,但请坚持使用离子本机链接和FCM插件github页面。

    希望这有帮助。