将iOS通知从Firebase(或其他平台)发送到特定终端



我们当前能够通过Firebase向特定的Android设备发送通知,我正在尝试对iOS设备进行相同的操作。

我们使用POD并已安装

pod 'Firebase/Core' 
pod ‘Firebase/Messaging'

我们创建了一个使用Firebase的帐户。

我添加了与AppDelegate.swift相对应的功能。执行该应用程序后,我可以将通知从firebase发送到所有iPhone ...但没有特定的通知。

在生产中,我有以下

  FIRInstanceID.instanceID().setAPNSToken(deviceToken, tape: FIRInstanceIDAPNSTokenType.prod)

直到这里,一切都很好..但是,当我尝试从用户获取令牌然后仅发送通知时,通知不会到达

产生令牌没有任何问题。

if let refreshedToken = FIRInstanceID.instanceID().token() { 
 print(“InstanceID token: (refreshedToken)”) 
 }

从firebase发送通知,并未显示错误..但是通知永远不会到达实际设备。

这可以用firebase完成吗?还有其他服务可以让我这样做吗?

update

我发送了控制台的消息

单击"打开图像"

在Android上,Firebase具有直接使用GCM的奢侈品。对于Apple,需要将FCM消息发送到Apple推送通知。

确保通过下载APN键并将上传到Firebase控制台:

来确保已设置后端

下载:https://firebase.google.com/docs/cloud-messaging/ios/certs

上传:打开firebase控制台,单击左上方的齿轮图标,单击项目设置,然后单击"云消息传递"选项卡。在此上传您的APN键。

启动Firebase时,您应该能够从调试输出控制台中获取FCM设备ID(在调试模式下运行应用程序时(。

您需要更新firebase pod并将此答案中的代码添加到iOS应用程序 -

iOS应用程序的工作燃烧消息代码

最新更新